일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- swift documentation
- UICollectionView
- uitableview
- swiftUI
- Protocol
- 리팩토링
- Xcode
- MVVM
- 리펙토링
- Refactoring
- collectionview
- ios
- ribs
- map
- RxCocoa
- Clean Code
- UITextView
- 스위프트
- rxswift
- clean architecture
- combine
- uiscrollview
- 리펙터링
- 클린 코드
- Human interface guide
- Observable
- SWIFT
- HIG
- tableView
- 애니메이션
- Today
- Total
목록iOS 기본 (SwiftUI) (54)
김종권의 iOS 앱 개발 알아가기
목차) SwiftUI의 기본 - 목차 링크 EditButton iOS 13+부터 사용 가능 토글 성격의 버튼 EditButton은 일반적으로 List와 같이 사용 List는 또 ForEach와 같이 사용하는데, 이 ForEach에 onDelete {}, onMove {}를 추가하여 적용 .toobar { EditButton }만 추가하면 자동으로 위 화면처럼 delete버튼과 move버튼이 자동으로 적용 struct ContentView: View { @State private var fruits = [ "Apple", "Banana", "Papaya", "Mango" ] var body: some View { NavigationView { List { ForEach(fruits, id: \.self) ..
목차) SwiftUI의 기본 - 목차 링크 * Button 기본 개념은 이전 포스팅 글 참고 커스텀 버튼 구현 아이디어 ButtonStyle을 준수하는 struct형을 만들고, makeBody(configuration:) 메소드를 구현 SwiftUI에서는 상속사용을 지양하기 때문에, 사용하는 쪽에서 .buttonStyle()으로 사용 // 커스텀 ScaleButton을 만들기 위해서 ButtonStyle 준수하고 makeBody 메서드 구현 struct ScaleButton: ButtonStyle { func makeBody(configuration: Configuration) -> some View { } } makeBody 인자 configuration은 label 프로퍼티에 접근할수 있는데, 이 l..
목차) SwiftUI의 기본 - 목차 링크 Button 개념 Button안에 텍스트를 적고 closure에 액션을 기입 Button("MyButton") { print("did tap") } action을 앞에서 받고 뒤에 Text와 같은 컴포넌트를 넣어서 표출도 가능 색상은 systemBlue가 디폴트로 설정 Button(action: { print("tap button!") }) { Text("MyButton") } action에 클로저로 넣어도 되지만, 일반 func 함수를 넣어도 가능 struct ContentView: View { var body: some View { Button(action: self.didTapButton) { //
목차) SwiftUI의 기본 - 목차 링크 SF Symbols 개념 애플에서 개발한 San Francisco font에 같이 사용할 수 있게 만든 이미지 마치 Text를 다루듯 font, foregroundColor를 모두 사용할 수 있는 형태 Image(systemImage:) 를 이용하여 SF Symbols를 사용한 후, .font로 폰트 프로퍼티 사용이 가능 SF Symbols 사용 방법 AppStore > SF Symbols Explorer 설치 SF Symbols Explorer 열기 SF Symbols 이미지들을 확인 가능 square.and.arrow.up 이미지를 사용하여 테스트 struct ContentView: View { var body: some View { Image(systemN..
목차) SwiftUI의 기본 - 목차 링크 Image 단순히 Image("imageName")으로 사용 struct ContentView: View { var body: some View { Image("book") } } 공간에 맞게 이미지 크기를 조정하는 모드 설정 resizable()를 선언 화면에 맞추어서 채워지는 효과 struct ContentView: View { var body: some View { Image("book") .resizable() //
목차) SwiftUI의 기본 - 목차 링크 Font를 사용하기 전에, dark mode도 확인위한 preview 설정 preview에 ColorScheme.allCases로 컬러 스킴에 접근하여 preferredColorScheme을 지정하여 dark mode도 확인할 수 있도록 설정 struct ContentView_Previews: PreviewProvider { static var previews: some View { ForEach(ColorScheme.allCases, id: \.self) { ContentView().preferredColorScheme($0) } } } System Font 사용 방법 systemFont .font로 Text에 적용이 가능 systemFont는 맥에서 자주 사..
목차) SwiftUI의 기본 - 목차 링크 * TextField 기본 개념 (@FocusState, 키보드 숨기기 사용 방법)은 이전 포스팅 글 참고 ViewModifier ViewModifier는 Text ViewModifier에서 알아본 내용처럼, SwiftUI에서는 상속이 불가능한 Struct를 사용하고 있고 이 때 컴포넌트화해서 쓰고 싶은 경우 Modifer를 이용하여 사용 ex) Text에서 Modifier를 사용한 경우 (정의하는 쪽) // MyTextModifier.swift import SwiftUI struct MyTextModifier: ViewModifier { func body(content: Content) -> some View { content .font(.system(size..
목차) SwiftUI의 기본 - 목차 링크 TextField 값을 입력받을 수 있는 컴포넌트 SwiftUI에서는 @State 상태 프로퍼티 하나를 두고 값이 입력되면 여기에도 입력되도록 구현 struct ContentView: View { @State private var username = "" var body: some View { TextField( "User name", text: $username ) } } @FocusState 텍스트 필드의 포커스 (firstResponder) 관리는 @FocusState를 사용하면 매우 손쉽게 코드에서도 제어가 가능 @FucusState에 사용할 텍스트 필드의 타입을 정의 enum Field { case username case email } email 텍스..