Sobes.tech
Junior

Kas yra px, dp ir sp Android kūrimo kontekste?

sobes.tech AI

Atsakymas iš AI

  • px (pikseliai): Pikseliai ekrane. Tai tikros taškai, iš kurių sudarytas ekranas. Dydis px priklausys nuo ekrano tankio. Skirtingo tankio įrenginiuose tas pats px dydis užims skirtingą fizinį plotą.

  • dp (tankio nepriklausomi pikseliai): Nepriklausomi nuo tankio pikseliai. Matavimo vienetas, pagrįstas ekrano fiziniu dydžiu. dp užtikrina vienodą UI elementų fizinį dydį skirtingo tankio ekranuose. 160 dp maždaug lygu 1 colui vidutinio tankio ekrane (mdpi). Android karkasas skaluoja dp pagal įrenginio tankį.

  • sp (skalės nepriklausomi pikseliai): Nepriklausomi nuo mastelio pikseliai. Panašūs į dp, bet papildomai skaliojami pagal naudotojo šrifto nustatymus (pavyzdžiui, šrifto dydį sistemos nustatymuose). sp rekomenduojama naudoti teksto dydžiui nustatyti.

Pavyzdys XML žymėjime:

<TextView  
    android:layout_width="match_parent"  
    android:layout_height="wrap_content"  
    android:textSize="16sp"  // Teksto dydis sp
    android:padding="8dp" /> // Pamušalai dp

<ImageView  
    android:layout_width="50dp"  // Paveikslėlio plotis dp
    android:layout_height="50dp"  /> // Paveikslėlio aukštis dp

Lentelė apibendrinimui:

Vienetas Paskirtis Skalavimas nuo Rekomenduojama naudoti
px Fiziniai pikseliai - Nerekomenduojama
dp Nepriklausomi nuo tankio Ekrano tankis UI elementams
sp Nepriklausomi nuo mastelio ir skalavimo Ekrano tankis ir šrifto dydis Tekstui