2013-09-04 32 views
6

Potrzebuję paska gwiazdek, który pasuje do szerokości automatycznej. Kiedy próbuję zmienić rozmiar na ekranie projektu; jeśli ekran jest mały, niektóre gwiazdy znikają (po 5 lub 6), jeśli ekran jest duży, wszystkie gwiazdy są widoczne.Ocena Androida pod kątem dopasowania do szerokości

Jak to zrobić?

oto co mam

<RatingBar 
    android:id="@+id/ratingBar1" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:numStars="10" 
    android:rating="7" /> 
+2

havent używane RatingBar aby być uczciwym, ale to ma sens, aby owinąć go w widoku przewijania, tak że usr można przewijać, jeśli nie robi pasuje? w przeciwnym razie konieczne może być napisanie własnej kontroli, która różni się wielkością gwiazdy w zależności od rozmiaru ekranu! –

+1

Mam również ten sam problem, czy masz rozwiązanie tego problemu? –

Odpowiedz

1

U nie można ustawić szerokość, ale można użyć niestandardowy pasek rankingu, wystarczy dodać:

compile 'FlexibleRatingBar:flexibleratingbar:1.3'

Ta ocena bar zmieści się automatycznie. niż można zainicjować na przykład:

ratingBar = new FlexibleRatingBar(this); 
    ratingBar.setStepSize(1); 
    ratingBar.setColorFillOn(Color.rgb(65,105,225)); 
    ratingBar.setColorFillPressedOn(Color.rgb(135,206,235)); 
someLayout.addView(ratingBar);