반응형

분류 전체보기 123

SwiftUI TabView

TabView TabView 컴포넌트는 하단의 아이콘을 통해 여러 페이지를 볼 수 있는 View를 만들어 준다. Example 3개의 페이지로 나뉘어져 있는 TabView import SwiftUI struct Layout: View { var body: some View { TabView { Text("The First Tab") .tabItem { Image(systemName: "1.square.fill") Text("First") } Text("Another Tab") .tabItem { Image(systemName: "2.square.fill") Text("Second") } Text("The Last Tab") .tabItem { Image(systemName: "3.square.fill")..

SwiftUI 2021.03.02

SwiftUI GroupBox, Menu

GroupBox GroupBox 컴포넌트는 일반 Text나 Label 요소를 그룹화하여 스타일링 해주는 컴포넌트이다. Example 간단한 GroupBox 사용방법이다. import SwiftUI struct ContentView: View { var body: some View { GroupBox( label: Label("swiftUI", systemImage: "heart.fill") .foregroundColor(.red) ) { Text("Welcome to swiftUI world") }.padding() } } struct ContentView_Previews: PreviewProvider { static var previews: some View { ContentView() } } Grou..

SwiftUI 2021.02.26

swiftUI List, Navigation

List List는 목록 인터페이스를 구형하기 위한 컴포넌트이다. UIKit의 UITableView와 같은 기능을 한다. Example1 import SwiftUI struct ContentView : View { var body: some View { List { Text("A List Item") Text("A Second List Item") Text("A Third List Item") } } } struct ContentView_Previews: PreviewProvider { static var previews: some View { ContentView() } } List 키워드안에 요소들을 하나 씩 집어넣으면 List가 완성된다. 기본적으로 버튼처럼 사용이 가능한데 현재는 아무런 속성없이 ..

SwiftUI 2021.02.25

SwiftUI Gesture

swiftUI에는 다양한 Gesture를 보다 쉽게 구현할 수 있도록 도와준다. Gesture를 감지하는 변수를 GestureState 키워드를 통해 바인딩을 하여 변수가 true일 때만 guesture를 실행하는 식으로 Gesture를 제공하고 있다. Gesture는 총 5가지 종류의 제스쳐가 있다. — TapGesture : 하나 이상의 탭을 인식하는 제스쳐이다. — LongPressGesture : 길게 누르면 인식하는 제스쳐이다. — DragGesture : 드래그 이벤트가 변경될 때 작업을 호출하는 제스쳐이다. — MagnificationGesture : 확대를 할 때 인식하는 제스쳐이다. —RotationGesture : 회전 동작을 인식하고 회전 각도를 추적하는 제스쳐이다. LongPress..

SwiftUI 2021.02.24

SwiftUI Toggle, Label, Grid

Toggle on/off 버튼을 만드는 컴포넌트이다. Example import SwiftUI struct ContentView: View { @State private var status = true var body: some View { Toggle(isOn: $status, label: { Text("toggle") }) } } struct ContentView_Previews: PreviewProvider { static var previews: some View { ContentView() } } 기본적으로 bool 값을 받는 isOn 파라미터와 제목을 Text 컴포넌트로 받는 label 파라미터가 있다. Example2 Toggle 스타일을 통해 toggle 버튼을 커스텀할 수 있다. impo..

SwiftUI 2021.02.22

SwiftUI Gradient

Gradient SwiftUI의 구조체 중 하나로 그라데이션을 적용할 때 사용한다. 파라미터는 colors라는 배열 파라미터가 존재하고 해당 배열안에 원하는 색상을 넣으면 적용이된다. Init Gradient(colors: [.red, .blue]) 이렇게 하면 색상이 빨간색과 파란색으로 된 그라데이션을 만들 수 있다. LenearGradient LenearGradient는 시작점과 끝점으로 축에 따라 색상 함수를 적용하는 그라데이션을 제공한다. Example import SwiftUI struct ContentView: View { var body: some View { LinearGradient(gradient: Gradient(colors: [.red, .white]), startPoint: .to..

SwiftUI 2021.02.20

SwiftUI ActionSheets, Alert, Popover

Action Sheets Action Sheets는 팝업 뷰의 종류 중 하나로 응답값에 대한 옵션이 2개 이상일 때 사용하기 좋다. macOS에서는 사용이 불가하고 iOS에서만 사용 가능하다. import SwiftUI struct ContentView: View { @State private var showActionSheet = false var body: some View { VStack { Button("Show action sheet") { self.showActionSheet = true } }.actionSheet(isPresented: $showActionSheet) { ActionSheet( title: Text("Actions"), message: Text("Available actio..

SwiftUI 2021.02.18

SwiftUI Image, Button

Image 선언방법 import SwiftUI struct ContentView: View { var body: some View { VStack { Image("charleyrivers_feature") Image(systemName: "circle") } } } struct ContentView_Previews: PreviewProvider { static var previews: some View { ContentView() } } → Assets 이미지 파일 : Assets에 있는 이미지 파일의 이름을 String 타입으로 입력한다. → xcode 기본 이미지 : systemName 파라미터를 사용하여 넣는다. 프레임에 영향을 받지 않는다. 이미지는 기본적으로 자신의 비트맵을 측정하여 크기를 선택..

SwiftUI 2021.02.17

SwiftUI @State, @Binding, TextField

개요 SwiftUI는 뷰 계층을 구성할 때 뷰에 대한 데이터 종속성도 표시한다. 외부 이벤트 또는 사용자가 수행한 작업으로 인해 데이터가 변경되면 SwiftUI는 인터페이스의 영향을 받는 부분을 자동으로 업데이트한다. 이런 앱 모델 내의 데이터 흐름과 변경사항을 제어하고 대응하는 상태를 제공하는 것은 총 3가지가 존재한다. —State —Binding —Observed Object @State SwiftUI의 view는 Struct 구조체로 구성되어 있고 이는 언제든 사용가능하고 소멸 또한 가능하다. 일반적으로는 Struct는 값 타입이라 Struct 안에 있는 값을 변경할 수 없다. 그래서 만든 것이 @State 키워드로 이는 struct 내에서 값을 변경가능하도록 도와준다. — String, Int,..

SwiftUI 2021.02.16
반응형