Witaj Sieciowy Szperaczu :)
Wiedz, że nie znajdziesz tutaj kodów źródłowych ani poradników jak kodzić dobre i przemyślane aplikacje na Androida.

Za to zobaczysz moje wolne przemyślenia, porady i pomysły. Dowiesz się też z czym miałem problemy, które napotkałem podczas swojej przygody z 'Andkiem' oraz, co ważniejsze, ich rozwiązania.

poniedziałek, 20 czerwca 2011

Size - czy liczy się rozmiar?



Tak! :)

Rozmiar się liczy, przynajmniej w Androidzie. Ekran zazwyczaj jest stosunkowo niewielki (wykluczając tablety), a co za tym idzie, o miejsce trzeba dbać i dobrze zarządzać wielkościami.
Pewnie nie każdy zdaje sobie sprawę ile jest rodzajów jednostek, które możemy wykorzystać (no bo przecież można wszystko ustawiać w pikselach).
A ja zgłębiłem trochę ten temat i przybliżę ten temat Wam. Oto rodzaje wielkości w Androidzie:


  • px - Piksele (Pixels) - jednostka odnosząca się do wielkości jednego piksela na ekranie urządzenia
  • in - Cale (Inches) - liczone od fizycznego rozmiaru ekranu
  • mm - Milimetry (Millimeters) - j.w. - liczone od fizycznego rozmiaru ekranu
  • pt - Punkty (Points) - jest to 1/72 cala liczona na podstawie fizycznego rozmiaru ekranu
  • dp - gęstość niezależnych pikseli? (Density-independent Pixels) - jednostka abstrakcyjna liczona na podstawie zagęszczenia ekranu (fizycznie rzecz biorąc). Jednostka ta odnosi się do 160dpi, czyli 1dp to jedna plamka na ekranie 160dpi. Wartość ta jest zmienna w zależności od ekranu, jednak trzeba uważać, bo nie zawsze jest przeliczana proporcjonalnie.
  • sp - pixele ustalane w zależności od skali (Scale-independent Pixels) - coś na podobieństwo dp, ale jest skalowane w zależności od ustawień czcionki użytkownika. Zalecane podczas podawania wielkości czcionek! Wtedy wielkość czcionki jest ustanawiana na podstawie zagęszczenia (dpi) i ustawień czcionki użytkownika.


Dlatego warto pamiętać, aby rozmiar tekstu definiować w sposób następujący:
1
2
3
4
5
6
<TextView  
    android:id="@+id/label"
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:textSize="44sp"
    />

Przykłady możecie znaleźć tutaj.


Brak komentarzy:

Prześlij komentarz