본문 바로가기

개발관련

SwiftUI BottomSheet

728x90
반응형

2025.02.01 - [개발관련] - SwiftUI DropDownSelector 컴포넌트 만드는 법

 

SwiftUI DropDownSelector 컴포넌트 만드는 법

2025.01.31 - [개발관련] - Supabase로 Next.js 호스팅하는 방법 Supabase로 Next.js 호스팅하는 방법✅ Supabase를 활용한 Next.js 호스팅 방법Vercel + Supabase (추천 ✅)Next.js의 기본 호스팅 플랫폼인 Vercel을 사용Sup

brainbattle.site

 

 

 

SwiftUI로 디자인시스템 만드는 법 온라인 강의

 

SwiftUI로 하는 디자인시스템 구현 : SwiftUI로 세상 모든 UI 만드는 법: 완전판 강의 | 무색무취의고

무색무취의고수 | , “앱 개발, 매번 새로 짜는 코드에 지치셨나요?”🤔한 번 만들어 끝나는 게 아니라, 다음 프로젝트에서도 쓸 수 있는 완벽히 재사용 가능한 디자인 시스템을 만들어 봅시다.2

www.inflearn.com

 

 

 

 

 


import SwiftUI

struct TestView: View {
  
  @State var isPresent: Bool = true
  
  var body: some View {
    
    Text("AAA")
      .sheet(isPresented: $isPresent) {
        BottomSheet(contents: Text("HAHA!").frame(maxWidth: .infinity))
          .presentationDetents([.height(150)])
          .presentationCornerRadius(32)
      }
  }
}

#Preview {
  TestView()
}

public struct BottomSheet<Contents: View>: View {
  @Environment(\.dismiss) private var dismiss
  
  // MARK: - Properties
  var contents: Contents
  
  // MARK: - Body
  public var body: some View {
    VStack {
      contents
        .padding(.top, 24)
        .padding(.horizontal, 16)
        .padding(.bottom, 48)
    }
    .ignoresSafeArea()
  }
}

 

728x90
반응형