2013년 3월 4일 월요일

tizen - Multiple Screen Support Guide

1. 개념

- UI scalability : 어플리케이션의 좌표계를 논리적으로 설정하면 논리적 해상도와 디바이스의 물리적 해상도와 차이만큼 스케일 업/다운이 발생
- Physical Resolution : 디바이스의 실제 픽셀수로 어플리케이션 좌표계를 물리적으로 설정할 경우 다른 해상도의 단말 지원은 어플리케이션에서 따로 처리 해야함.
- Logical Resolution : 가상의 논리적인 픽셀로 어플리케이션 좌표계를 논리적으로 설정하면 UI scalability가 발생(가로/세로 비율이 유지되며 스케일링이 되기에 가로/세로 비유일 다른 단말에서는 가로(좁은쪽)를 기준으로 맞춤
- Logical Coordinate : API 2.0 버전부터 480, 960과 같은 논리 좌표계가 추가되었음
- Screen Density : 인치당 가로/세로로 나누는 값으로 Screen Density Extra High와 Screen Density High를 지원함


2. 지원되는 화면 크기

  • Screen Size Large
  • Screen Size Normal

480x800, 720x1280은 Normal에 해당한다.


3. UI Scalability

타이젠은 논리 좌표계를 사용할 경우 물리적 픽셀에 맞추어 자동으로 스케일이 이루어 진다.

스케일링을 지원하는 UI 와 그래픽 클래스

  • Tizen::Web::Controls::Web
  • Tizen::Ui::Controls
  • Tizen::Graphics
  • Tizen::Graphics::Font
폰트는 UI 처럼 같은 비율의 스케일링 처리를 하면 안된다.
시인성을 높이기 위해 폰트 스케일링은 다르게 처리 될 수 있다.


4. 리소스 관리 및 사전 스케일링
res 폴더에 물리적 픽셀별 디렉토리와 논리적 density 디렉토리에 리소스를 넣을 수 있다.
리소스는 디바이스의 물리적 픽셀에 대응되는 디렉토리를 먼저 찾으며 이후 논리 좌표계를 사용할 경우 논리적 density 리소스를 찾는다.


5. 다양한 화면을 지원하기 위한 고려사항
논리 좌표계를 사용하면 가로는 디바이스의 물리적 해상도에 맞게 자동으로 스케일링이 이루어지며 세로는 단말에 따라 다르게 처리될 수 있다.

세로에 대해서는 스크롤을 사용한다거나 UI 컨트롤을 상대적으로 배치한다거나 Layout 컨트롤을 사용하면 된다.




댓글 없음:

댓글 쓰기