de-vraag
  • Spørgsmål
  • Tags
  • Brugere
Meddelelser
Belønninger
Registrering
Når du har registreret dig, vil du få besked om svar og kommentarer til dine spørgsmål.
Log ind
Hvis du allerede har en konto, kan du logge ind for at se nye meddelelser.
Der vil være belønninger for tilføjede spørgsmål, svar og kommentarer.
Mere
Kilde
Rediger
 capecrawler
capecrawler
Spørgsmål

Hvad er forskellen mellem "px", "dip", "dp" og "sp"?

Hvad er forskellen mellem Android-måleenheder?

  • px
  • dip
  • dp
  • sp
5659 2010-01-08T03:23:46+00:00 3
 CopsOnRoad
CopsOnRoad
Redigeret spørgsmål 2018ør december 2018 в 5:08
Programmering
user-interface
android
dimension
android-layout
units-of-measurement
Populære videoer
#1.2 Android Multi Screen support: dp vs. dpi vs. px vs. sp. How 'dp' is rendered in runtime?
#1.2 Android Multi Screen support: dp vs. dpi vs. px vs. sp. How 'dp' is rendered in runtime?
3 år siden
Difference between px, dp, dip and sp in Android?
Difference between px, dp, dip and sp in Android?
7 år siden
Android tutorial: DP vs SP
Android tutorial: DP vs SP
5 år siden
« Forrige
Næste »
Dette spørgsmål har 1 svar på engelsk, for at læse dem log ind på din konto.
Løsning / svar
Alex Volovoy
Alex Volovoy
2010ør januar 2010 в 4:41
2010-01-08T04:41:53+00:00
Mere
Kilde
Rediger
#9896473

Fra [Android Developer Documentation] (http://developer.android.com/guide/topics/resources/more-resources.html#Dimension):

  1. px Pixels - svarer til faktiske pixels på skærmen.

  2. in Inches - er baseret på skærmens fysiske størrelse.
    1 tomme = 2,54 centimeter

  3. mm Millimeter - baseret på skærmens fysiske størrelse.

  4. pt Points - 1/72 af en tomme baseret på den fysiske størrelse af skærmen.

  5. dp eller dip Density-uafhængige pixel - en abstrakt enhed, der er baseret på skærmens fysiske tæthed. Disse enheder er relative i forhold til en 160 dpi-skærm, så en dp er en pixel på en 160 dpi-skærm. Forholdet mellem dp-til-pixel ændres med skærmens tæthed, men ikke nødvendigvis i direkte forhold. Bemærk: Compileren accepterer både "dip" og "dp", selv om "dp" er mere i overensstemmelse med "sp".

  6. sp** Skala-uafhængige pixels - dette er ligesom dp-enheden, men den er også skaleret af brugerens skriftstørrelsespræference. Det anbefales, at du at bruge denne enhed, når du angiver skriftstørrelser, så de bliver justeret til både skærmtætheden og brugerens præferencer.

Fra [Understanding Density Independence In Android] (https://www.captechconsulting.com/blogs/understanding-density-independence-in-android):

+----------------+----------------+---------------+-------------------------------+
| Density Bucket | Screen Density | Physical Size | Pixel Size                    | 
+----------------+----------------+---------------+-------------------------------+
| ldpi           | 120 dpi        | 0.5 x 0.5 in  | 0.5 in * 120 dpi = 60x60 px   | 
+----------------+----------------+---------------+-------------------------------+
| mdpi           | 160 dpi        | 0.5 x 0.5 in  | 0.5 in * 160 dpi = 80x80 px   | 
+----------------+----------------+---------------+-------------------------------+
| hdpi           | 240 dpi        | 0.5 x 0.5 in  | 0.5 in * 240 dpi = 120x120 px | 
+----------------+----------------+---------------+-------------------------------+
| xhdpi          | 320 dpi        | 0.5 x 0.5 in  | 0.5 in * 320 dpi = 160x160 px | 
+----------------+----------------+---------------+-------------------------------+
| xxhdpi         | 480 dpi        | 0.5 x 0.5 in  | 0.5 in * 480 dpi = 240x240 px | 
+----------------+----------------+---------------+-------------------------------+
| xxxhdpi        | 640 dpi        | 0.5 x 0.5 in  | 0.5 in * 640 dpi = 320x320 px | 
+----------------+----------------+---------------+-------------------------------+
+---------+-------------+---------------+-------------+--------------------+
| Unit    | Description | Units Per     | Density     | Same Physical Size | 
|         |             | Physical Inch | Independent | On Every Screen    | 
+---------+-------------+---------------+-------------+--------------------+
| px      | Pixels      | Varies        | No          | No                 | 
+---------+-------------+---------------+-------------+--------------------+
| in      | Inches      | 1             | Yes         | Yes                | 
+---------+-------------+---------------+-------------+--------------------+
| mm      | Millimeters | 25.4          | Yes         | Yes                | 
+---------+-------------+---------------+-------------+--------------------+
| pt      | Points      | 72            | Yes         | Yes                | 
+---------+-------------+---------------+-------------+--------------------+
| dp      | Density     | ~160          | Yes         | No                 | 
|         | Independent |               |             |                    | 
|         | Pixels      |               |             |                    | 
+---------+-------------+---------------+-------------+--------------------+
| sp      | Scale       | ~160          | Yes         | No                 | 
|         | Independent |               |             |                    | 
|         | Pixels      |               |             |                    | 
+---------+-------------+---------------+-------------+--------------------+

Du kan også finde flere oplysninger i [Google Design Documentation] (https://www.google.com/design/spec/layout/units-measurements.html#).

 CopsOnRoad
CopsOnRoad
Redigeret svar 2018ør december 2018 в 5:07
More resource types  |  Android Developers
This page defines more types of resources you can externalize, including: A boolean value defined in XML. No attributes. This application code retrieves the boolean: This layout XML uses the boolean for an attribute: A color value defined in XML. The …
developer.android.com
5646
0
 Bruiser
Bruiser
2011ør februar 2011 в 12:56
2011-02-25T12:56:09+00:00
Mere
Kilde
Rediger
#9896475

Stort set alt om dette, og hvordan man opnår den bedste understøttelse af flere skærme i forskellige størrelser og tætheder, er meget godt dokumenteret her:

  • Understøttelse af flere skærme

Skærmstørrelse
Faktisk fysisk størrelse, målt som skærmens diagonal. For nemheds skyld grupperer Android alle faktiske skærmstørrelser i fire generaliserede størrelser: lille, normal, stor og ekstra stor.

Skærmdensitet
Antallet af pixels inden for et fysisk område af skærm; normalt omtalt som dpi (dots per inch). For eksempel, en skærm med "lav" tæthed har færre pixels inden for et givet fysisk område, sammenlignet med en skærm med "normal" eller "høj" tæthed. For nemheds skyld, Android grupperer alle faktiske skærmtætheder i seks generelle tætheder: lav, middel, høj, ekstra høj, ekstra høj, ekstra ekstra ekstra høj og ekstra-ekstra-ekstra-høj.

Orientering
Skærmens orientering fra brugerens synsvinkel synsvinkel. Dette er enten landskab eller portræt, hvilket betyder, at skærmens formatforhold er enten bred eller høj. Vær opmærksom på, at ikke ikke kun forskellige enheder fungerer i forskellige orienteringer ved som standard, men orienteringen kan også ændres under kørslen, når brugeren roterer enheden.

Opløsning
Det samlede antal fysiske pixels på en skærm. Når der tilføjes understøttelse af flere skærme, gør programmer ikke direkte med opløsningen; programmerne skal være opmærksomme på kun med skærmstørrelse og -densitet, som specificeret af den generaliserede størrelses- og tæthedsgradgrupper.

Densitetsuafhængig pixel (dp)
En virtuel pixelenhed, som du bør bruge, når du definerer UI-layout, for at udtrykke layoutdimensioner eller -position på en tæthedsindeksuafhængig måde. Den tæthedsafhængige pixel svarer til en fysisk pixel på en 160 dpi-skærm, hvilket er den baseline-tæthed, som systemet antager for en skærm med "medium" tæthed. Ved kørselstid håndterer systemet på gennemsigtig vis en eventuel skalering af dp-enhederne, hvis det er nødvendigt, baseret på den faktiske tæthed af den anvendte skærm. Omregningen af dp-enheder til skærmpixels er enkel: px = dp * (dpi / 160). På en skærm med 240 dpi er 1 dp f.eks. lig med 1,5 fysiske pixels. Du bør altid bruge dp-enheder, når definere dit programs brugergrænseflade, for at sikre korrekt visning af din brugergrænseflade på skærme med forskellige tætheder.

Hvis du er seriøs med hensyn til at udvikle en Android-app til mere end én type enhed, bør du have læst dokumentet om udvikling af støtte til skærme mindst én gang. Derudover er det altid en god ting at kende det faktiske antal aktive enheder, der har en bestemt skærmkonfiguration.

  • Skærmstørrelser og tætheder
Sayed  Mohd Ali
Sayed Mohd Ali
Redigeret svar 2018ør november 2018 в 9:16
Distribution dashboard  |  Android Developers
An overview of device characteristics that are active in the Android ecosystem.
developer.android.com
Screen compatibility overview  |  Android Developers
developer.android.com
669
0
 devmiles.com
devmiles.com
2012ør august 2012 в 2:15
2012-08-02T14:15:09+00:00
Mere
Kilde
Rediger
#9896476

Jeg vil uddybe mere om, hvordan dp præcist konverteres til px:

  • Hvis det kører på en mdpi-enhed, vil et 150 x 150 px-billede fylde 150 * 150 dp på skærmen.
  • Hvis det kører på en hdpi-enhed, vil et 150 x 150 px-billede fylde 100 * 100 dp på skærmen.
  • Hvis det kører på en xhdpi-enhed, vil et 150x150 px-billede fylde 75 * 75 dp på skærmen.

Omvendt: Lad os sige, at du ønsker at tilføje et billede til dit program, og at det skal fylde en 100 * 100 dp-kontrol. Du skal oprette billeder i forskellige størrelser til understøttede skærmstørrelser:

  • 100 * 100 px-billede for mdpi
  • 150 * 150 px-billede til hdpi
  • 200 * 200 px billede til xhdpi
 V.Y.
V.Y.
Redigeret svar 2018ør april 2018 в 7:03
335
0
Tilføj spørgsmål
Kategorier
Alle
Teknologi
Kultur / fritid
Liv / kunst
Videnskab
Professionel
Virksomhed
Brugere
Alle
Ny
Populære
1
mohidil qodirova
Registreret 1 dag siden
2
Jasur Fozilov
Registreret 2 dage siden
3
Zuxriddin Muydinov
Registreret 2 dage siden
4
Денис Анненский
Registreret 5 dage siden
5
365
Registreret 1 uge siden
DA
DE
EL
ES
FI
FR
ID
IT
JA
LT
LV
NL
PL
PT
RU
SK
SL
TR
ZH
© de-vraag 2022
Kilde
stackoverflow.com
under licens cc by-sa 3.0 med kildeangivelse