일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- Xcode
- 리펙터링
- MVVM
- Clean Code
- 리펙토링
- uitableview
- 리팩토링
- Refactoring
- UITextView
- Human interface guide
- rxswift
- SWIFT
- uiscrollview
- UICollectionView
- clean architecture
- RxCocoa
- map
- 애니메이션
- swift documentation
- Observable
- ios
- ribs
- HIG
- combine
- tableView
- swiftUI
- 클린 코드
- collectionview
- Protocol
- 스위프트
- Today
- Total
목록ios (1094)
김종권의 iOS 앱 개발 알아가기
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/Zr5w2/btq6CN8FMnO/UfGngvVj2kRwr4IwPo0eN0/img.png)
액션 시트 현재 컨텍스트와 관련된 두 개 이상의 선택 사항을 제공하는 경고 표출 용도 iOS 같이 작은 화면에서는 밑에서 올라오고, iPad와 같은 큰화면은 pop over 형태로 표출 주의사항 컨텍스트 상에서 강한 경고를 줄때 사용하며, 약한 알림은 Pull down(iOS 14+) 메뉴 사용 사용자가 뒤로 돌아갈 수 있도록 제공 cancel 버튼을 필수로 표출 "Delete"와 같은 강한 경고를 제공하고 싶을 경우 빨간색 사용 action sheet에서 상단에 위치 Action sheet를 스크롤되지 않도록 option을 조금만 표출 * 출처 https://developer.apple.com/design/human-interface-guidelines/ios/views/action-sheets/
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/bhMSpI/btq6zRXPHSW/reM4iDpkin5mZSXZaWDM2K/img.png)
ToolBar 앱 화면 하단에 존재 반투명과 색조가 존재 ex) safari는 사용자들이 페이지 하단으로 스크롤하는 동안 ToolBar를 숨기고 화면 상단으로 스크롤하거나 화면 하단을 탭하면 다시 가져오는 형태필요하지 않은 경우 종종 숨겨지는 형태 TabBar와의 차이점 TabBar: 현재 컨텍스트와 연관되지 않은 화면이동 ToolBar: 현재 컨텍스트와 관련된 항목 추가, 삭제, 주석 추가, 사진 촬영과 같은 일 버튼이 3개 이하인 ToolBar에서는 텍스트를 사용 or 글리프 사용 버튼 사이의 공간은 상수값 UIBarButtonSystemItemFixedSpace 사용 버튼은 UIBarButtonItem 사용 Toolbar 버튼에 커스텀 glyph를 적용할 경우 사이즈 규약 ToolBar에는 segm..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/r3a6d/btq6p8ecre6/EMD9F5PRZQWFVqI4qHNIlk/img.png)
String(describing:) 모든 Type의 instance를 문자열로 변환 print(String(describing: ViewController.self)) // ViewController 주의: ClassName.Type할 경우 컴파일 에러 -> 특정 클래스의 타입을 얻고 싶은 경우 ClassName.self로 접근 CustomStringConvertible description에 대한 정의가 되어있는 프로토콜 스위프트의 print()와 String(decription:)은 위 description 프로퍼티를 사용 CustomStringConvertible을 conform하고 있는 클래스의 객체를 print()하면 구현된 description프로퍼티를 사용 Linked List에서 연결된 N..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/dPDtDR/btq6qoNZHtR/UpZo2WVJxOeABXDKkR0bX0/img.png)
1. collectionView 개념 2. collectionView 구현, custom cell 3. collectionView 레이아웃 개념 (UICollectionViewFlowLayout) * CollectionView(컬레션 뷰) - self resizing cell, custom Layout 방법 참고: https://ios-development.tistory.com/629 UICollectionViewFlowLayout CollectionView에는 CollectionViewLayout라는 객체가 있고, 이 객체가 cell들의 레이아웃과 스타일을 담당 크게 FlowLayout과 CustomLayout이 존재 FlowLayout: default되어 있는 옵션 customLayout: 직접 La..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/bvwngp/btq6lmxrQFE/AFF9FjNYzXE1ntBOjlCaY1/img.png)
1. collectionView 개념 2. collectionView 구현, custom cell 3. collectionView 레이아웃 개념 (UICollectionViewFlowLayout) programmtically CollectionView 구현 참고: https://ios-development.tistory.com/624 xib사용하여 CollectionView 구현 CollectionView 추가 -> 구분을 위해 CollectionView와 Cell 배경 색상 세팅 Cell의 Identifier 설정 CollectionView의 DataSource 정의 collectionView @IBOutlet 설정 tableView와 동일하게 DataSource에서 numberOfItemsInSect..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/A5W7W/btq6gMJ1wD1/dJnLQbCioZi0VzyCcCwvRk/img.png)
1. collectionView 개념 2. collectionView 구현, custom cell 3. collectionView 레이아웃 (UICollectionViewFlowLayout) CollectionView의 개념 CollectionView와 TableView의 차이점 CollectionView는 cell이 grid형태 CollectionView는 UICollectionViewLayout이라해서 cell 레이아웃 설정하는 부분이 따로 존재 tableView에서의 "row"라는 용어가 "Item"으로 사용 CollectionView와 TableView의 공통점 Section과 Cell이 존재하고 dataSource를 가지고 데이터처리와 UI 처리가 분리되어 있는 구조 TableView와 동일하게..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/bFd6c6/btq6k4o4NHC/p0UsrgsDhIxzMi5DD1Hxfk/img.png)
초기 info.plist 위치 AppTargetName/AppName/info.plist info.plist 파일 이동 시 에러 Resource 하위로 이동 빌드 시 에러: "Build input file cannot be found: ... info.plist" 해결 방법 info.plis File에 수정 준비: Target > Build Settings > Packaging info.plist File에 info.plist 주소 입력
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/pjq6b/btq5Qv89zYw/13strsG0bW1KLFgArrazGK/img.gif)
Dynamic Type Sizes iOS 7+부터 사용자가 텍스트 크기를 선택할 수 있는 기능 존재 아이폰 > 설정 > 손쉬운 사용 > 디스플레이 및 텍스트 크기 > 더 큰 텍스트 사용자가 선호하는 텍스트 크기를 선택할 수 있도록하여 유연성을 제공 Larger Accessibility Type Sizes: Dynamic Type Sizes보다 더욱 큰 사이즈를 사용 Dynamic Type Sizes 사용 방법 코드에서는 .preferredFont(forTextStyle:)으로 사용 storyboard에서는 inspector에서 설정 UIFontTextStyle // UIFontTextStyle 사용 방법 bodyLabel.font = .preferredFont(forTextStyle: .body) cal..