반응형
LinkedIn 개발자로 성장하면서 남긴 발자취들을 확인하실 수 있습니다.
Github WWDC Student Challenge 및 Cherish, Tiramisul 등 개발한 앱들의 코드를 확인하실 수 있습니다.
개인 앱 : Cherish 내 마음을 들여다보는 시간, 체리시는 디자이너와 PM과 함께 진행 중인 1인 개발 프로젝트입니다.
10년 후, 20년 후 나는 어떤 스토리 텔러가 되어 있을지 궁금하다. 내가 만약에 아직 조금 더 탐구하고 싶은 게 있고, 궁금한 게 있다면, 그게 설사 지금 당장의 내 인생에 도움이 안 되는 것 같더라도 경험해보자. 그 경험들을 온전히 즐기며 내 것으로 만들고, 내 일에 녹여내고... 그러다보면 그 점들이 모여 나란 사람을 그려내는 선이 될 테니까.

Recent Posts
Recent Comments
Total
관리 메뉴

꿈꾸는리버리

HIG읽기 : Navigation 본문

오뚝이 개발자/human interface

HIG읽기 : Navigation

rriver2 2022. 4. 9. 19:10
반응형

 Navigation 이란? 

Navigation은 content를 연결해주는 역할이다.

사람들은 기대와 다른 경험을 하기 전에는 navigation의 존재를 알지 못한다.

따라서 App 설계자는 Navigation 자체가 공기처럼 자연스럽게 흘러가게 하면서

interface를 지배하거나 content의 집중을 빼앗지 않고,

App의 구조와 목적을 잘 서포트하는 방식으로 구현해야 한다. 

 

navigation의 예시 

해당 내용들을 HIG 사이트에서 확인할 수 있다.

page controls

-> 사람은 7 +- 2개 정도의 정보만을 저장하는 밀러의 법칙에 따라 10개 이하의 control이 있어야 한다.

-> 테슬러 법칙(복잡성 보존 법칙) : 줄일 수 없는 특정한 복잡성들 

 

tab bars

 

segmented controls

: 다른 카테고리의 information을 묶을 때는 segmented control을 사용하라

 

table views

 

collection views

 

split views

 

 

 Navigation의 종류 

1️⃣  Hierarchical Navigation 

: 사용자가 최종 목적지에 도달할 때까지 " 1가지 "의 선택을 하며 나아가는 방식 

- 다른 목적지로 이동하기 위해서는 왔던 경로로 다시 돌아가서 다른 선택을 해야 한다.

 

ex) Settings, Mail

 

 

ex) Settings

벨소리를 변경하기 위해 Settings -> Sound &Haptics -> Ringtone으로 이동

만약 Focus를 변경하고 싶으면 다시 Ringtone -> Sound &Haptics -> Settings 으로 이동 해야 함

 

2️⃣ Flat Navigation

: 여러 content를 "Switching" 하는 방식 

ex) Music, App Store

 

ex) App store : tab bar

Today <-> Games <-> Apps <-> Acade <-> Search

 

3️⃣ Content-Driven or Experience-Driven Navigation

: content 간 자유롭게 이동하거나 content가 자체적인 Navigation을 가지는 방식

- 몰입형 App이 이런 방식을 이용

ex) Games, books 

 


💡 종류가 3가지 이지만, 꼭 한 앱에서 한가지 navigation을 사용해야 하는 것은 아니다.

ex) app store

flat navigation으로 Today <-> Games <-> Apps <-> Acade <-> Search을 변경할 수 있지만,

해당 View에서 app을 선택하면 app을 다운 받을 수 있는 view로 Hierarchical Navigation을 통해 이동한다.

 

 Navigation 설계법 

1️⃣  명확한 경로를 제공하라. 

- 사용자는 항상 현재 위치, 다음 위치, 이전 위치로 가는 방법을 알아야 한다.

- navigation 스타일과 관계없이 "논리적", "예측가능", "쉽게 이동"을 목표로 하라.

- 일반적으로 한 스크린에 하나의 path를 제공한다.

if) screen에서 multiple context를 보여줘야 한다면,  Action SheetsAlertsPopovers, and Modality을 고려하라.

 

2️⃣ 짧고 빠르게 ! 

- 최소의 taps, swipes, and screens을 목표로 하라.

 

3️⃣ touch gestures의 사용

- 최소한의 노력으로 screen 전환이 가능하도록 하라. 

ex) 왼쪽에서 오른쪽으로 swipe하면 이전 screen으로 이동

 

4️⃣ standard navigation을 사용하라. 

- page controls, tab bars, segmented controls, table views, collection views, and split views 등 standard navigation을 사용하라.

- 사용자들은 이미 이 controls들에 익숙해져 있기 때문에 직관적으로 앱을 사용할 수 있다.

 

5️⃣ hierarchy navigation을 사용할 때는 navigation Bar을 사용하라

- 1번과 연관되는 내용으로, 현재 위치, 다음 위치, 이전 위치를 제공해야 하며 < 을 눌렀을 때는 이전 위치로 이동시켜야 한다.

 

6️⃣ Peer 메뉴를 보여줄 땐 Tab bar를 사용하라

- Tab bar는 현재 위치와 상관 없이 보다 쉽고 빠르게 메뉴간 전환이 가능하다.

+ ) IPad의 경우에는 Tab bar 대신 Split view를 사용하라.

- Tab bar와 동일하게 쉽고 빠르게 메뉴간 전환이 가능한 view로 큰 display일 경우에는 Split views를 사용하는 것이 좋다.

 

7️⃣ 같은 type의 content에 대해 여러 Page를 보여줘야 한다면 page control

- page control을 사용하면 page가 얼마나 있는지, 현재 active 상태인 page가 어느 것인지 명확히 파악할 수 있습니다

+) 만약 10개 이상의 page를 컨트롤 할 때는 table view를 사용해서 hierarchial navigation으로 다음 view에서 page를 보여주는 것이 좋음

ex) 날씨앱 


+) 현재 context에서 상호작용하는 기능을 제공할 때 toolbar을 사용하라.

toolbar는 navigaiton으로 다른 view로 이동하는 것들과 달리 toolbar는 현재 위치에서 추가적인 기능을 수행한다. 

 

 Tab bar VS Tool bar 

- 둘 다 스크린의 하단에 위치하지만 다른 목적으로 사용된다.

- Tab bar 목적 : 다른 content로 navigation 시킨다. 

            ex) Clock App에서의 the Alarm, Stopwatch, and Timer 탭들

- Tool bar 목적 : 현재 스크린에서 액션을 수행하는 버튼이다.

            ex ) filtering items, marking up content, creating an item

 

- 같은 View에서 Tab bar와 Tool bar을 함께 사용하지 않는다.

 

 

 NOTE 

강의를 듣고 공문을 읽고 잘 이해했다고 생각했는데 막상 블로그 포스팅을 시작하니까 모르는 개념들이 계속 떠올랐다. 알다가도 모르겠는 HIG의 세계,, 하지만 navigation은 이제 잘 설명할 수 있다!! 오늘도 열공했구만 ~~ 화이팅구리 ~~~ 솟아라 긍정의 힘 !!!!!!

 

 

햄버거바 

숨겨진 메뉴는 중요한가 ? 다시 생각해봐야 한다

햄버거바에 알림이 있으면 2번 눌러들어가야 함 함

일반적인 네비게이션 

뎁스가 깊게 들어간다.... -> 갑자기 다른 flow로 흘러감

 

<-> 탭바, 탬바의 더보기 옵션

많은 양의 메뉴를 넣을 수 있다.

웹에서 쓰는 Ux이기 때문에 

앱 : 인터렉션 상호작용 목표

지문 사라지면서 화면 크기가 커져서 

-> 햄버거 메뉴를 탭으로 뺐을 때 60% 누른 내용이 늘었음

 

 

+ ) navigation 예시

드롭다운 메뉴

상단의 스크롤 네비게이션

 

 

 

 출처 

https://developer.apple.com/design/human-interface-guidelines/ios/app-architecture/navigation/

 

Navigation - App Architecture - iOS - Human Interface Guidelines - Apple Developer

Navigation People tend to be unaware of an app’s navigation until it doesn’t meet their expectations. Your job is to implement navigation in a way that supports the structure and purpose of your app without calling attention to itself. Navigation shoul

developer.apple.com

 

반응형

'오뚝이 개발자 > human interface' 카테고리의 다른 글

HIG읽기 : Setting  (0) 2022.04.09
HIG읽기 : Accessing User Data and Resources  (0) 2022.04.09
HIG읽기 : Modality  (0) 2022.04.06
HIG읽기 : Loading  (0) 2022.04.04
HIG읽기 : Onboarding  (4) 2022.04.03
Comments