2016-10-07 7 views
0

Я пытаюсь стиль мой RatingBar со следующим кодом:RatingBar Тема работы в Зефир, но не в Lollipop

<style name="RatingBarfeed" parent="Theme.AppCompat.Light.DarkActionBar"> 
    <item name="colorControlNormal">@color/white</item> 
    <item name="colorControlActivated">@color/duskYellow</item> 
</style> 

И в layout.xml Я использую следующий код:

<android.support.v7.widget.AppCompatRatingBar 
     android:theme="@style/RatingBarfeed" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     style="?android:attr/ratingBarStyleSmall" 
     android:id="@+id/ratingBar" 
     android:paddingBottom="0.45dp" 
     app:layout_constraintTop_toTopOf="@+id/rating" 
     app:layout_constraintLeft_toRightOf="@+id/rating" 
     app:layout_constraintBottom_toBottomOf="@+id/rating" 
     app:layout_constraintRight_toRightOf="parent" 
     app:layout_constraintHorizontal_bias="0.0" 
     android:background="@color/orange" 
     android:rating="3.5" 
     android:stepSize="0.5"/> 

Его прекрасно работать в Зефир (проверить скриншот) enter image description here

Но в Lollipop тема не работает (проверить скриншот) enter image description here

Пожалуйста, помогите ... !!!!

+0

изменить это 'родитель =«Theme.AppCompat.Light.DarkActionBar»' 'к этому родительскому =«Theme.AppCompat»' – Ironman

+0

уже не пытался никаких изменений его же –

+0

изменить это 'android.support.v7.widget. AppCompatRatingBar' для этого 'RatingBar'. и проверить, что работа или нет? – Ironman

ответ

4

После долгих борьбы я получил ответ: должен быть style="@style/RatingBarfeed" вместо android:theme+"@style/RatingBarfeed"

Для укладки звезд заливки, пустой и частичного цвета

android:progressTint="#F9BB28" 
android:progressBackgroundTint="@color/white" 
android:secondaryProgressTint="@color/white" 

Окончательного кода должен быть как

<android.support.v7.widget.AppCompatRatingBar 
     android:layout_width="wrap_content" 
     android:layout_height="18dp" 
     style="@style/RatingBarfeed" 
     android:id="@+id/ratingBar" 
     android:gravity="center" 
     android:progressTint="#F9BB28" 
     android:progressBackgroundTint="@color/white" 
     android:secondaryProgressTint="@color/white" 
     app:layout_constraintTop_toTopOf="@+id/rating" 
     app:layout_constraintLeft_toRightOf="@+id/rating" 
     app:layout_constraintBottom_toBottomOf="@+id/rating" 
     app:layout_constraintRight_toRightOf="parent" 
     app:layout_constraintHorizontal_bias="0.0" 
     android:background="@color/orange" 
     android:rating="3.5" 
     android:stepSize="0.1"/> 

Стиль должен быть:

<style name="RatingBarfeed" parent="android:style/Widget.Material.RatingBar.Small"> 
    <item name="colorControlNormal">@color/white</item> 
    <item name="colorControlActivated">@color/duskYellow</item> 
</style> 
+0

окончательно решил мою проблему .. ее работа хорошая. –

+0

@ СагарЧавада ** Высокая пятерка ** –

 Смежные вопросы

  • Нет связанных вопросов^_^