Form 은 설정이나 검사관과 같은 데이터 입력에 사용되는 컨트롤을 그룹화하기 위한 컨테이너입니다.
SwiftUI는 form 내부에 포함된 뷰에 플랫폼에 맞는 스타일을 적용하여 이들을 함께 그룹화합니다. form에 특화된 스타일은 버튼, 토글, 레이블, 목록 등과 같은 요소에 적용됩니다. 이러한 스타일은 플랫폼에 따라 다를 수 있습니다. 예를 들어 iOS에서는 폼이 그룹화된 목록으로 나타나고, macOS에서는 정렬된 수직 스택으로 나타날 수 있습니다.
다음 예제는 iOS에서 두 섹션으로 그룹화된 간단한 데이터 입력 폼을 보여줍니다. 지원하는 타입 (NotifyMeAboutType 및 ProfileImageSize) 및 상태 변수 (notifyMeAbout, profileImageSize, playNotificationSounds, 및 sendReadReceipts)는 간소화를 위해 생략되었습니다.
var body: some View {
NavigationView {
Form {
Section(header: Text("Notifications")) {
Picker("Notify Me About", selection: $notifyMeAbout) {
Text("Direct Messages").tag(NotifyMeAboutType.directMessages)
Text("Mentions").tag(NotifyMeAboutType.mentions)
Text("Anything").tag(NotifyMeAboutType.anything)
}
Toggle("Play notification sounds", isOn: $playNotificationSounds)
Toggle("Send read receipts", isOn: $sendReadReceipts)
}
Section(header: Text("User Profiles")) {
Picker("Profile Image Size", selection: $profileImageSize) {
Text("Large").tag(ProfileImageSize.large)
Text("Medium").tag(ProfileImageSize.medium)
Text("Small").tag(ProfileImageSize.small)
}
Button("Clear Image Cache") {}
}
}
}
}
'SwiftUI' 카테고리의 다른 글
LazyV(H)Grid (0) | 2023.12.13 |
---|---|
DisclosureGroup (0) | 2023.12.13 |
Picker View, (Multi) Date Picker View (0) | 2023.12.13 |
Sequence (0) | 2023.11.24 |
Preventing Insecure Network Connections - 네트워크 보안 (0) | 2023.11.18 |