Sobes.tech
Junior

Šta su px, dp i sp u kontekstu Android razvoja?

sobes.tech АИ

Одговор од АИ

  • px (piksela): Pikseli na ekranu. To su pravi tačkovi od kojih se sastoji displej. Veličina u px zavisi od gustine ekrana. Na uređajima sa različitim gustinama, ista veličina u px zauzima različitu fizičku površinu.

  • dp (nezavisni od gustine piksela): Pikseli nezavisni od gustine. Jedinica mere zasnovana na fizičkoj veličini ekrana. dp obezbeđuje istu fizičku veličinu UI elemenata na ekranima sa različitom gustinom. 160 dp je otprilike jednako 1 inč na ekranu srednje gustine (mdpi). Android okvir skalira dp u skladu sa gustinom uređaja.

  • sp (skalabilni nezavisni od veličine piksela): Pikseli nezavisni od skaliranja. Slično dp, ali se dodatno skalira u zavisnosti od podešavanja fonta korisnika (npr. veličina fonta u sistemskim podešavanjima). Preporučuje se korišćenje sp za određivanje veličine teksta.

Primer upotrebe u XML:

<TextView  
    android:layout_width="match_parent"  
    android:layout_height="wrap_content"  
    android:textSize="16sp"  // Veličina teksta u sp
    android:padding="8dp" /> // Margine u dp

<ImageView  
    android:layout_width="50dp"  // Širina slike u dp
    android:layout_height="50dp"  /> // Visina slike u dp

Tabela sažetka:

Jedinica Svrha Skalira od Preporučeno za
px Fizički piksel - Nije preporučljivo
dp Nezavisni od gustine piksel Gustina ekrana UI elementi
sp Skalabilni nezavisni od veličine piksel Gustina ekrana i veličina teksta Tekst