https://developer.apple.com/design/human-interface-guidelines/ios/overview/themes/
앱 디자이너로써 앱 스토어의 차트 상단에 나타나는 뛰어난 제품을 전달할 기회를 가질 수 있습니다. 그렇게 하려면 품질 및 기능에 대한 높은 기대수준을 충족시킬 필요가 있을 것입니다.
세 가지 주요 테마가 다른 플랫폼에 비해 iOS를 차별화시켜줍니다.
최소한의 베젤, 그라디언트 및 그림자 사용으로 인터페이스를 밝고 경쾌하게 유지하면서 콘텐츠가 가장 중요함을 보장합니다.
영향력과 도달 범위를 최대화하려면 앱의 정체성을 생각할 때 다음 원칙을 신경써야 합니다.
미적 무결성은 앱의 모양과 동작을 얼마나 기능에 잘 통합되는지를 나타냅니다. 예를 들어 중요한 작업을 수행하는 사람들을 돕는 앱은 미세하고 명확한 그래픽, 표준 컨트롤, 예측 가능한 동작을 사용해서 그들의 초점을 유지합니다. 반면에 게임처럼 몰입형 앱은 발견을 유도하면서도 재미와 흥미를 유발하는 매력적인 모양을 전달합니다.
일관성 있는 앱은 시스템 제공 인터페이스 요소, 잘 알려진 아이콘, 표준 텍스트 스타일, 통일된 용어를 사용함으로써 익숙한 표준 및 패러다임을 구현합니다. 앱은 사람들이 기대하는 방식으로 기능과 동작을 통합합니다.
스크린에 나타나는 컨텐트의 직접적인 조작은 사람들의 관심을 끌고 이해를 쉽게 해줍니다. 사용자가 기기를 회전하거나 제스쳐를 사용해서 스크린 컨텐트에 영향을 줄 때, 사용자는 직접적인 조작을 경험합니다. 직접적인 조작을 통해 사용자는 그들의 액션에 대한 즉각적이고 시각적인 결과를 볼 수 있습니다.
피드백은 액션을 인정하며, 사람들에게 지속적으로 정보를 제공할 수 있는 결과를 보여줍니다. 내장된 iOS 앱은 모든 사용자 액션에 대한 응답으로 지각적 피드백을 제공합니다. 상호작용 요소는 탭되었을 때 간결하게 강조되고, 진행상황 인디케이터는 긴 작업의 상태를 알려주며, 애니메이션과 소리는 액션의 결과를 명확하게 드러내도록 해줍니다.
사람들은 앱의 가상 객체와 동작이 현실 세계에 기인한 것이든 디지털 세계에 기인한 것이든, 친근한 경험에 대한 은유일 때 더 빠르게 습득합니다. 사람들은 스크린과 물리적으로 상호작용하기 때문에 은유는 iOS에서 잘 작동합니다. 아래의 컨텐트가 보이도록 뷰를 이동시킬 수 있습니다. 컨텐트를 드래그하고 스와이프할 수 있습니다. 스위치를 토글할 수 있고 슬라이더를 이동할 수 있으며, 피커 값을 통해 스크롤할 수도 있습니다. 책과 잡지의 페이지를 넘길 수도 있습니다.
iOS 전반에 걸쳐 사람(앱이 아닌)이 통제 대상입니다. 앱은 행동 방침을 제안하거나 위험한 결과에 대한 경고를 알려줄 수 있습니다. 하지만 앱이 의사결정을 하는 것은 잘못된 것입니다. 최고의 앱은 사용자를 활성화하는 것과 원하지 않는 결과를 피하는 것 사이에서 올바른 균형을 찾습니다.
최고의 앱은 사용자를 활성화하는 것과 원치 않는 결과를 방지하는 것 사이에서 올바른 균형을 찾습니다. 앱은 상호작용적 요소를 친근하고 예측 가능하게 유지하고, 파괴적인 액션을 확인하며, 진행중인 작업을 취소할 수 있도록 함으로써 사람들이 통제하고 있다는 느낌을 줄 수 있습니다.
https://developer.apple.com/design/human-interface-guidelines/ios/overview/interface-essentials/
대부분의 iOS 앱은 일반적인 인터페이스 요소를 정의하는 프로그래밍 프레임워크인 UIKit
의 컴포넌트를 사용해 만들어집니다. 이 프레임워크는 고수준 커스터마이징을 제공하면서도 앱이 시스템 전반에 걸쳐 일관적인 모양을 달성할 수 있도록 해줍니다. UIKit
요소는 유연하고 친근합니다. 또한, UIKit
요소는 적응적이며, 모든 iOS에서 잘 보이는 하나의 앱을 디자인할 수 있도록 해주고, 시스템이 모양 변경을 도입할 때 자동으로 업데이트됩니다. UIKit
이 제공하는 인터페이스 요소는 세 가지 주요 카테고리로 나눠집니다.
Bars. 사람들에게 앱의 어느 곳에 있는지 알려주고, 네비게이션을 제공하며, 액션 시작 및 정보 커뮤니케이션을 위한 버튼 혹은 기타 요소를 포함할 수 있습니다.
Views. 텍스트, 애니메이션, 상호작용 요소처럼 사람들이 앱에서 볼 수 있는 앱의 주요 컨텐트를 포함합니다. 뷰는 스크롤링, 삽입, 삭제, 정렬과 같은 동작을 가능하게 합니다.
Controls. 액션을 시작하고 정보를 전달합니다. 버튼, 스위치, 텍스트 필드, 진행상황 인디케이터가 컨트롤의 대표적인 예시입니다.
Bars
https://developer.apple.com/design/human-interface-guidelines/ios/bars/navigation-bars/
https://velog.io/@panther222128/Bars
Views
https://developer.apple.com/design/human-interface-guidelines/ios/views/action-sheets/
https://velog.io/@panther222128/Views
Controls
https://developer.apple.com/design/human-interface-guidelines/ios/controls/buttons/
https://velog.io/@panther222128/Controls
iOS의 인터페이스를 정의하는 것돠 더불어 UIKit
은 앱이 채택할 수 있는 기능을 정의하기도 합니다. 예를 들어 이 프레임워크를 통해 터치스크린에서 제스쳐에 응답할 수 있고 드로잉, 접근성, 프린팅 같은 기능을 가능하게 해줍니다.
iOS는 강력한 앱 디자인을 가능하게 하면서도 애플 페이, 헬스킷, 리서치킷 같은 다른 프로그래밍 프레임워크 및 기술을 통합합니다.