반응형

swiftUI basic 8

SwiftUI Segmented Control

개요UIKit에서 UISegmentedControl은 SwiftUI의 Picker와 같은 역할을 한다. 이번에는 Picker 컴포넌트와 UISegmentedControl 함수를 통해 서로 다른 이미지를 View에 표시해주는 간단한 프로젝트를 해볼 예정이다. 코드SideOfTheForceenum SideOfTheForce: String, CaseIterable { case light = "Light" case grey = "Grey" case dark = "Dark" }Picker의 타이틀을 정해주는 String 타입의 enum이다. light, grey, dark 총 3가지의 case가 있고 이것을 String값으로 반환해준다. CaseIterable 프로토콜을 채용하면 안에 있는 값들을 배열처럼 사용할..

SwiftUI 2021.04.01

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
반응형