Jak změnit hvězdy obrazy RatingBar?

hlasů
28

Díky Android SDK 1.1 r1, je tam nějaký způsob, jak změnit RatingBarhvězda image widget Class se svou vlastní? Je to vůbec možné? Pokud ano, tak jak?

Dík.

Položena 03/03/2009 v 19:45
zdroj uživatelem
V jiných jazycích...                            


2 odpovědí

hlasů
56

Nejste si jisti, asi 1,1, ale s 1,6 a později si můžete jen rozšířit Widget.RatingBarstyl a potlačí vlastnosti, které jsou zodpovědné za hvězdy obrazovkami (v values/styles.xml):

 <style name="myRatingBar" parent="@android:style/Widget.RatingBar">
        <item name="android:progressDrawable">@drawable/my_ratingbar_full</item>
        <item name="android:indeterminateDrawable">@drawable/my_ratingbar_full</item>
 </style>

Není třeba podtřídy RatingBar, stačí zadat tento styl k ní s ‚styl‘ atributu:

<RatingBar style="@style/myRatingBar" ... /> 

Stáhnout android zdroje a podívat se na ratingbar_full.xml v základní protažitelné složky, aby viděli, co dát do my_ratingbar_full.

Najdete plnější verzi tohle: Jak vytvořit vlastní Ratings bar v Androidu

Odpovězeno 07/02/2010 v 00:35
zdroj uživatelem

hlasů
8

Stručná odpověď je, že vypadá, jako by to techincally možné. Nejjednodušší způsob, jak by bylo vytvořit vlastní RatingBar na základě RatingBar sourcecode (elegantnější by bylo extendv Orignal RatingBar do své vlastní). Odtud byste také muset vytvořit svůj vlastní styl pomocí RatingBar původní zdrojový RatingBar XML jako příklad (nebo dědí a prodlužuje původní RatingBar styl).

Zdroj je k dispozici wtih git na developer.android.com.

Mám podezření, že vytvořit vlastní hodnocení bar se nedoporučuje, protože je v rozporu s ustálenou vzhled a dojem z operačního systému.

Odpovězeno 05/03/2009 v 04:45
zdroj uživatelem

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more