2014-07-04 11 views
19

Załóżmy, że opracowuję inny układ dla urządzeń o rozmiarze ekranu równym lub większym niż 600dp. Chcę używać kwalifikatorów zasobów z post Androidem 3.2. Stworzyłem folder o nazwie layout-sw600dp i umieściłem tam mój układ, ale w tym samym czasie mogłem utworzyć folder o nazwie layout-w600dp i umieścić tam plik układu xml. Próbuję dowiedzieć się jaka jest różnica między -sw600dp i -w600dp? W końcu obie mają używać układu dla urządzenia o szerokości> = 600dp.Kwalifikatory zasobów Androida -sw # dp vs -w # dp

Odpowiedz

54

sw to "najmniejsza szerokość". Nie zmienia się, jeśli urządzenie jest obrócone.

w, z drugiej strony, jest dostępna (tj. aktualna) szerokość.

Patrz Providing Alternative Resources:

smallestWidth - sw<N>dp - The smallestWidth jest stała wielkość charakterystyczną ekranie urządzenia; najmniejsza szerokość urządzenia nie zmienia się, gdy zmienia się orientacja ekranu na .

Dostępne szerokość - w<N>dp - Wartość ta konfiguracja zmieni, gdy orientacja zmienia się między poziomym i pionowym, aby dopasować obecna rzeczywista szerokość.

Przykład. Załóżmy, że masz urządzenie o 600dp x 400p.

  • Jeśli masz zasób w600dp, będzie on używany w układzie poziomym, ale nie w pionie.
  • Jeśli masz zasób sw600dp, nie będzie on używany dla żadnej orientacji (najmniejsza to 400).
+0

Dziękuję za odpowiedź. Ale nadal go nie rozumiem. to, co masz na myśli przez szerokość, nie zostanie zmienione, jeśli devoted zostanie obrócone. szerokość zostanie zmieniona – user1409534

+2

@ user1409534 Tak, ale nie szerokość _smallest_. Edytowano odpowiedź na przykład, mam nadzieję, że jest to pomocne. – matiash

Powiązane problemy