- 왜 안드로이드에서 pixel을 쓰지않고 dp를 쓸까?
- pixel로 디자인을 하면 기기마다 다른 해상도를 가지기 때문에 다르게 표현이 되는 문제 발생
- 안드로이드에서 이를 해결하기 위해 dp를 사용dp
- dp → density-independent pixel
- 1dp = 1px이 되는 dpi는 160dpi
- px = dp * (dpi / 160)
- 즉, 해상도가 커지면 dpi가 증가
- 하지만, 해상도에 상관없이 dp를 적용하면 같은 비율로 화면에 디자인
- pixel로 디자인을 하면 기기마다 다른 해상도를 가지기 때문에 다르게 표현이 되는 문제 발생
해상도 종류
- 리소스 추가 시 이미지 파일을 크기별로 만들어 위의 해상도에 맞게 추가해야한다.
- 필요 시 Zeplin을 통해 자동화 가능
글씨 크기는 sp!!
- sp → scalable pixels
- 안드로이드는 설정에서 글씨 크기를 변경 가능
- sp는 기본적으로 dp처럼 해상도에 대한 처리를 해주는 동시에 설정에서 정해준 글씨 크기까지 고려한다.
✨ 성찰
- 이때까지 안드로이드 개발을 진행하면서 dp가 해상도에 구애받지 않는다는 막연한 개념을 가지고 개발을 진행
- 개발을 진행할 때 모든 기기, 해상도에 상관없이 만들 수 있도록 고려를 해야할 필요성을 느낌.
- 추후에 다른 해상도와 기기에 따라서 어떻게 화면에 나오는지 테스트할 수 있는 프레임워크가 있는지 찾아볼 예정.
- 참조
'안드로이드 > 디자인' 카테고리의 다른 글
[Design] 디자인 원칙 (0) | 2023.01.16 |
---|