2010-08-09 15 views
6

Chciałbym dodać gwiazdę ulubionych, taką jak ta na liście kontaktów na Androidzie. Czy istnieje sposób, w jaki możemy zdobyć tę gwiazdę, czy będę musiał napisać własną? Nie mogę znaleźć żadnych standardowych elementów GUI z Androida innych niż ikony menu opcji. Czy nie ma więcej, czego nie znalazłem?Jak zdobyć ulubione gwiazdy

Spójrz na ten obok George'a Andersona. Po kliknięciu zmienia kolor na żółty.

alt text

Odpowiedz

6

Niektóre standardowe obrazy z systemu Android są dostępne w systemie Android SDK, który można przeglądać na komputerze online pod numerem here. (Jak powiedział CommonsWare).

Również znajduję this website bardzo przydatny, ponieważ pokazuje mi, jak wygląda każdy obraz i podaje nazwę obrazu, dzięki czemu mogę go znaleźć w Android SDK.

+0

tej strony ze wszystkimi obrazami jest niesamowite. Dzięki – Mike

+0

Świetne informacje, ale zastanawiam się, dlaczego na ziemi autor użył * ramki * na tej stronie. Nic tylko denerwujące. – bos

+1

Począwszy od sierpnia 2015 r. Oba te linki są martwe. –

25

Kod źródłowy do aplikacji Kontakty jest available online, ponieważ Android jest open source.

Trochę wtrącania w nie poprowadzi cię do pliku contact_header.xml znalezionego w instalacji SDK. To wskazuje, że gwiazda jest realizowany poprzez CheckBox:

<CheckBox 
     android:id="@+id/star" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_gravity="center_vertical" 
     android:visibility="gone" 
     android:contentDescription="@string/description_star" 
     style="?android:attr/starStyle" /> 

, które z kolei, szlaki Ci wpis w temacie:

<item name="starStyle">@android:style/Widget.CompoundButton.Star</item> 

co z kolei postanawia:

<style name="Widget.CompoundButton.Star"> 
    <item name="android:background">@android:drawable/btn_star_label_background</item> 
    <item name="android:button">@android:drawable/btn_star</item> 
</style> 

Używaj tych obrazów z CheckBox i powinieneś uzyskać to samo zachowanie. Te obrazy są również dostępne w Twojej instalacji SDK.

1

@android: odkształcalne/btn_star (ten żółknie)

@android: odkształcalne/star_off

i wariacje na te (duża, włączona, wyłączona)