Vytvoril som svoju aplikáciu s výškou a šírkou zadanou v pixeloch pre zariadenie Pantech, ktorého rozlíšenie je 480x800.
Potrebujem previesť výšku a šírku pre zariadenie G1. Myslel som si, že prevod na dp vyrieši problém a poskytne rovnaké riešenie pre obe zariadenia.
Existuje nejaký jednoduchý spôsob, ako previesť pixely na dp? Nejaké návrhy?
Dp by ste mali používať rovnako ako pixely. To je všetko, čo sú; zobrazenie nezávislých pixelov. Použite rovnaké čísla, aké by ste použili na obrazovke so strednou hustotou, a veľkosť bude zázračne správna na obrazovke s vysokou hustotou.
Zdá sa však, že to, čo potrebujete, je možnosť fill_parent vo vašom návrhu rozloženia. Použite fill_parent, keď chcete, aby sa vaše zobrazenie alebo ovládací prvok rozšíril na celú zostávajúcu veľkosť v nadradenom kontajneri.
PX
a DP
sú rozdielne, ale podobné.
DP
je rozlíšenie, keď zohľadňujete iba fyzickú veľkosť obrazovky. Keď použijete DP
, škáluje sa vaše rozloženie na iné obrazovky podobných rozmerov s rôznou hustotou pixelov
.
Niekedy však skutočne chcete pixely
a keď pracujete s rozmermi v kóde, vždy pracujete so skutočnými pixelmi
, pokiaľ ich neprevádzate.
Takže na androidovom zariadení s normálnou veľkosťou obrazovky hdpi
je 800x480
533x320v
DP(myslím). Ak chcete prepočítať
DPna
pixely /1,5, prepočítajte späť
*1,5. Toto platí len pre jednu veľkosť obrazovky a
dpi, menilo by sa to v závislosti od dizajnu. Naši umelci mi však dávajú
pixelya ja ich prepočítavam na
DPpomocou vyššie uvedenej rovnice
1,5`.