일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- tableView
- Observable
- ribs
- 리펙터링
- 애니메이션
- SWIFT
- MVVM
- uiscrollview
- RxCocoa
- Xcode
- UITextView
- collectionview
- ios
- map
- 스위프트
- Refactoring
- 리팩토링
- uitableview
- 클린 코드
- Human interface guide
- rxswift
- combine
- Clean Code
- Protocol
- swift documentation
- clean architecture
- 리펙토링
- swiftUI
- HIG
- UICollectionView
- Today
- Total
목록HIG (58)
김종권의 iOS 앱 개발 알아가기
Picker 사용자들이 선택할 수 있는 스크롤 가능한 목록을 하나 이상 표출 iOS 14+에서는 Date Pickers 제공 (아래 내용 참고) 스크롤에 있어서 예측 가능하고 논리적으로 정렬된 값을 사용 Picker를 표출할 때 화면전환을 하지 않고 Picker는 일반적으로 화면 하단에서 나타나도록 설계 Date Picker iOS 14+ 터치, 키보드를 통해 날짜와 시간 둘 다 선택할 수 있는 인터페이스 DatePicker 추가 datePicker에서 제공하는 모드 날짜: 월 / 일 / 년도 시각: 시간 / 분 / AM / PM 날짜와 시간 카운트 다운 타이머: 최대 23시 59분까지 시간과 분을 표출 공간이 제한되어 있는 경우 간결한 DatePicker 사용 DatePicker 클래스: https:/..
Page Control indicator image를 통해서 flat 목록 페이지를 표출 스크롤되는 indicator row는 사용자가 원하는 페이지를 찾기 위해 목록을 탐색하는데 도움 인터렉션 - swipe: 왼쪽에서 오른쪽으로 미는 동작 or 오른쪽에서 왼쪽으로 미는 동작 scrubbing 중 페이지 전환에 애니메이션을 삽입을 지양: 사용자들이 매우 빠르게 scrub할 수 있으며, 애니메이션이 들어가면 산만한 시각적 영향 인터렉션 - scrub: page control을 꾹 누른 후 다른 페이지로 이동 Page Control의 indicator 스타일 3가지 Automatic: 사용자가 control과 상호작용 할때만 배경을 표시 page control이 현재 화면의 기본 탐색 control이 아닌 ..
Label 화면 인터페이스 요소를 설명하거나 짧은 메시지를 제공 사용자 입장에서 간결함을 느끼도록 최대한 짧게 유지 사용자가 시스템에서 text size를 변경할 때 반영이 되도록 dynamic type size 적용 string에 관한 애플 가이드 * 참고 https://developer.apple.com/design/human-interface-guidelines/ios/controls/labels/
Edit Menus TextField, TextView, WebView, ImageView에서 요소를 길게 터치하거나 두 번 탭하여 콘텐츠를 선택하고 복사 및 붙여넣기와 같은 편집 옵션 컨텍스트에 적합한 명령어를 표출 일반적인 구성: cut, copy, paste, select, select all, delete 위 명령 중 하나를 선택적으로 비활성화 하는 기능이 존재 image, text와 같은 요소를 선택하지 않는 부분에서는, 메뉴에 copy, paste와 같은 항목이 표출되지 않도록 구현 메뉴의 모양은 변경할 수 없지만 위치를 변경할수 있기 때문에, 중요한 내용이나 인터페이스의 일부를 가리지 않도록 필요의 경우 edit menu의 배치를 조정 edit menu와 동일한 기능을 가진 다른 contro..
시스템 버튼 버튼을 누르면 어떤 일이 발생할지 암시하기 위해서 제목에 동사를 사용 복잡함을 나타낼수 있는 긴 텍스트보다는 짧게 유지 기본적으로는 시스템 버튼에는 테두리와 배경이 없지만, 익숙한 UI를 위해서 통화앱의 숫자버튼과 같은 경우에 테두리와 배경을 사용 Detail Disclosure Buttons 특정 행에 대한 정보에 접근하기 위해 테이블에서 사용되는 modal view를 띄우는 버튼 행을 탭하면 (didSelectRow) 상세화면으로 이동된다면 Detail Disclosure Button은 불필요 Info Button 타입은 밝은 스타일과 어두운 스타일 두 가지 존재 UIButtonTypeInfoLight, UIButtonTypeInfoDark Add Contact Buttons (연락처 추..
WebView HTML 및 웹 사이트와 같은 웹 콘텐츠를 앱 내에서 직접 로드하고 표출 애플의 Mail앱은 WebView를 이용하여 메시지에 HTML 콘텐츠를 표출 WebView의 뒤로, 앞으로 탐색이 디폴트로 비활성화 되어있으므로, 사용자가 WebView를 통해 여러 페이지를 방문하는 경우 앞뒤 탐색을 활성화 WebView를 통해 Web Browser 구축을 하지 않도록, 해당 앱에서 WebView는 잠시 머무는 역할로 사용 iOS에서 웹을 탐색하는 방법은 Safari가 존재하기 때문 * 참고 https://developer.apple.com/design/human-interface-guidelines/ios/views/web-views/
TextView 디폴트는 왼쪽 정렬, black 색상 TextView를 편집할 수 있는 경우, 내부를 탭하면 키보드가 표출 여러 글꼴이나 색상, 정렬을 사용하는 것보다 텍스트를 읽기 쉽게 유지하도록 설정 Device에서 글꼴의 크기를 변경해도 텍스트가 여전히 잘 보이도록 동적 유형 채택 (접근성) 키보드 입력 타입에는 다양한 종류가 있으므로, 사용자 입장에서 입력을 간소화 할 수 있게끔 적절한 키도브 유형을 표출
Tables 개념: 데이터를 섹션 또는 그룹으로 나눌 수 있고 스크롤되는 단일 열, 행 목록 표를 사용하여 정보를 목록 형태로 효율적으로 표출 Table 형태 3가지 3가지 스타일의 구체적인 개념: https://ios-development.tistory.com/538 Plain: 레이블이 있는 섹션, index row 존재 Grouped: 행은 그룹으로 표시되며 항상 하나 이상의 그룹이 포함되고 각 그룹에는 항상 하나 이상의 행이 포함 Inset grouped: 행의 모서리가 둥근형태이고 행의 contents가 길어지는 경우를 대비한 여백이 많은 스타일 TableView 적절한 테이블 너비를 고려: 얇은 테이블은 잘리고 줄바꿈 현상, 넓은 테이블은 읽기가 어려운 현상 표 내용을 빠르게 표출: 테이블 콘..