2016-10-14 2 views
0

Ich weiß, diese Art von Frage wurde oft gestellt, aber keiner von ihnen hat mir geholfen.Integer, xml Bildschirmgröße weise

Ich möchte verschiedene ganzzahlige Werte für meine 4, 5 und 5,5 Zoll Geräte. Dafür habe ich verschiedene Werte Ordner wie values-small, values-normal und values-large

erstellt aber jedes Mal bekomme ich Wert von values-normal nur. Nichts davon funktioniert für mich.

Ich habe auch müde, minimale Breite mit folgender Formel zu berechnen. Um die Mindestbreite zu erhalten und den Ordner entsprechend zu erstellen.

DisplayMetrics dm = this.getApplicationContext().getResources().getDisplayMetrics(); 
float screenWidth = dm.widthPixels/dm.density; 
float screenHeight = dm.heightPixels/dm.density; 

Noch bekomme ich das gleiche Ergebnis. Bitte helfen Sie mir, das herauszufinden.

My Prüfvorrichtungen sind HTC ONE X (4,7 Zoll), Moto G3 (5 inch) amd Meizu MX5 (5,5 inch)

+0

Bitte erklären. Welche Werte sind falsch? – Vyacheslav

+0

erstens habe ich versucht mit werte-smal, normal etc aber ich bekomme wert von normal in allen geräten ... dann habe ich sw zu berechnen, aber stahl sw ist das gleiche für alle geräte –

+0

haben sie versucht, 'values-ldpi' zu verwenden , '/ Werte-mdpi'? – Vyacheslav

Antwort

0

Ich weiß nicht, warum, aber ich war gleiche kleinste Breite für mein HTC (4.7) und Moto3G (5) zu bekommen. Also wechselte ich zu Kodieren.

gut für jetzt habe ich das mit Hilfe von this gelöst. Ich berechne die kleinste Breite zur Laufzeit und bekomme meine gewünschte Ausgabe mit if..else. Ich weiß nicht, ob das die beste Lösung ist oder nicht, aber ich arbeite zu dieser Zeit für mich.

Auf der Suche nach Batter Lösung oder Vorschlag.

2

Versuchen Ordner wie unten zu schaffen.

res/values/dimens.xml(default) 
res/values-ldpi/dimens.xml (240x320 and nearer resolution) 
res/values-mdpi/dimens.xml (320x480 and nearer resolution) 
res/values-hdpi/dimens.xml (480x800, 540x960 and nearer resolution) 
res/values-xhdpi/dimens.xml (720x1280 - Samsung S3, Micromax Canvas HD, etc) 
res/values-xxhdpi/dimens.xml (1080x1920 - Samsung S4, HTC one, etc) 

es funktioniert gut für mich

+0

keine ... didint Hilfe ... Stahl bekommen das gleiche Ergebnis –

+0

Ich bekomme Ergebnis von xhdpi ... für alle drei Geräte –