sp (Scale-independent Pixels)

SP (Scale-independent Pixels)는 텍스트 크기를 결정하는데 주로 사용되는 단위로, 안드로이드 환경에서 많이 사용된다. SP는 DP와 매우 유사하지만, 추가적으로 사용자의 글꼴 크기 설정에 따라 크기가 조절되는 특징을 가지고 있다.

안드로이드에서는 디바이스의 화면 크기와 해상도, 뿐만 아니라 사용자의 개인 설정에 따라 텍스트 크기가 달라져야 하는 경우가 많다. 이를 해결하기 위해 안드로이드는 SP라는 단위를 사용하여, 사용자의 설정에 따라 동적으로 크기가 조정되는 텍스트를 제공한다.

사용 예시

예를 들어, 안드로이드 기기에서 사용자가 글꼴 크기를 “큰 글꼴”로 설정하면, 이는 시스템의 기본 텍스트 크기보다 큰 텍스트를 생성하는 데 사용되는 모든 SP 값에 영향을 미친다. 따라서, 16SP 크기의 텍스트는 사용자의 설정에 따라 실제 표시 크기가 변경될 수 있다.

주의점

SP는 사용자의 글꼴 크기 설정에 따라 크기가 변동되기 때문에, 레이아웃이 틀어지면 안되는 경우 DP를 사용하기도 한다.

  • SP는 텍스트 크기 설정에만 사용해야 하며, 레이아웃을 구현할 때 사용하면 안된다.
  • 사용자가 안드로이드 환경설정에서 텍스트 크기를 변경할 수 있으므로, 이 설정을 변경했을 때도 UI가 정상적으로 작동하도록 테스트하는 것이 중요하다.