2016-10-24 4 views
0

Nehmen wir an, dass wir eine Tablette mit den folgenden Eigenschaften haben:Problem mit Multi-Screen-Design

7 Zoll

1280 * 800 px

213dpi.

Daraus können wir die Auflösung des Geräts in DP berechnen.

So:

1280 = dp * (213/160) dp = 1280 * 160/213 = 961,50 ~ = 960

und

800 = dp * (213/160) dp = 800 * 160/213 = 600.94 ~ = 600

daher seine Auflösung ist: 960 x 600dp. So verwenden wir die layout-sw600dp.

Nun lassen Sie uns annehmen, wir ein mobiles Gerät, dh Samsung Galaxy haben 4.

5,0 Zoll

1080 x 1920 px

441 dpi.

Wir machen die gleichen Berechnungen.

1080 = dp * (441/160) dp = 1080 * 160/441 = 391,83 ~ = 390

und

1920 = dp * (441/160) dp = 1920 * 160/441 = 696.59 ~ = 696

Also in diesem Fall 390 x 696 dp. Verwenden wir Layout -sw480dp oder Layout -sw320dp für das mobile Gerät?

Danke,

Theo

Antwort

2

'sw' bedeutet kleinste Breite, so sollte es Layout-sw320dp sein.

Die kleinste Breite des Geräts ist die kürzeste der verfügbaren Höhe und Breite des Bildschirms (Sie können es sich auch als die "kleinste mögliche Breite" für den Bildschirm vorstellen). Sie können dieses Qualifikationsmerkmal verwenden, um sicherzustellen, dass Ihre Anwendung unabhängig von der aktuellen Ausrichtung des Bildschirms über mindestens dps Breite für die Benutzeroberfläche verfügt.

Wenn Ihr Layout beispielsweise erfordert, dass die kleinste Dimension des Bildschirmbereichs zu jeder Zeit mindestens 600 dpi beträgt, können Sie mit diesem Qualifikationsmerkmal die Layoutressourcen res/layout-sw600dp/erstellen. Das System verwendet diese Ressourcen nur, wenn die kleinste verfügbare Bildschirmgröße mindestens 600 dpi beträgt, unabhängig davon, ob die 600-dpi-Seite die vom Benutzer wahrgenommene Höhe oder Breite ist. Die kleinste Breite ist eine feste Bildschirmgröße des Geräts; Die kleinste Breite des Geräts ändert sich nicht, wenn sich die Ausrichtung des Bildschirms ändert.

(Oben aus der Dokumentation entnommen). Hoffe es hilft!