본문 바로가기

전생의 기억/공통

Client 개발 Honey Book - 1. UI 포커스 관리 - Focus Management)

Unity 툴을 이용하여 Client 개발을 하던 도중, UI Component의 Focusing을 관리하기 위해서 버튼이나 Text와 같은 컴포넌트에 Navigation이라고 하는 속성이 있는것을 깨달았다.

 

Unity에서는 Navigation이라는 속성값을 vertical, horizontal, automatic, everything 등의 옵션을 부여하여 Tap Order을 주위 Component들과의 Relative 설정을 통해 관리할 수 있도록 구현하였다.

 

여기서 문득, 다른 App 개발이나, 웹 개발 등에서 Frontend, App을 만들때에도 동일한 고민을 하지않을까? 생각되어 검색해보았다.

 

 

Focus Management

내가 Unity에서 사용했던 Navigation 과 같은 기능동작을 하는 개념을 Focus Management 라고 일반적으로 이야기 한다.

Focus Management가 필요한 이유는, 우리가 보통 정보검색을 위해서 Portal사이트에 접속하였을 때, 기본 Focus가 검색내용을 기입하는 Text Input Field로 설정되듯이, 사용자가 Application을 더 편하게 사용하기 위해 Object를 자동으로 Focusing 해줄 필요가 있다. 다른 경우를 생각해보면, 로그인 창에서 아이디 먼저 입력을 해야지, 패스워드를 먼저 입력하지 않는 것처럼.

 

Tap Order

탭 오더는, 위에서 잠깐 언급한 것 처럼, 로그인 창에서 아이디를 입력한 후에, 패스워드를 입력해야 할때, 다음 Focusing이 될 UI오브젝트가 패스워드 Text Input 이라는것을 순서로 정해놓아, 말 그대로 키보드의 Tap Key를 입력하였을 때, 현재 Focusing 된 UI 오브젝트의 다음 오브젝트를 Tap Order를 보고 빠르게 찾아갈 수 있는 기능이다.

보통, Focus Management는 Tap order를 결정하여 관리한다.