2016-10-02 2 views
2

Есть ли способ изменить размер виджета RatingBar, программно без использования стилей xml?Изменение размера рейтингаBar в программе?

Я знаю, что мы можем настроить размер RatingBar с помощью xml styles, но он по-прежнему не является достаточно общим, я, кажется, сталкиваюсь с некоторыми из хороших библиотек github, которые достигают этой цели, но они предлагают его для стоимости API 15+, my minSDK составляет 10, так что может ли кто-нибудь помочь в поиске решения для:

Уменьшить размер рейтинга Виджет-виджет программно под api 10?

ответ

0

Это длинный выстрел, но:

  • Если вы используете только звезды (нет пользовательских форм).
  • Вы готовы использовать API 11+.

Я создал библиотеку, которая может вам помочь: SimpleRatingBar.

Он оснащен:

  • Полностью рабочий android:layout_width: он может быть установлен в wrap_content, match_parent или abritary дп.
  • Произвольное количество звезд.
  • Произвольный шаг размер.
  • Размер звезд можно контролировать точно или задавая максимальный размер.
  • Настраиваемые цвета в нормальном состоянии (граница, заполнение и фон звезд и рейтинговая панель).
  • Настраиваемые цвета в нажатом состоянии (граница, заполнение и фон звезд и индикаторная панель).
  • Настраиваемый размер между звездами.
  • Настраиваемая ширина границ звезд.
  • Настраиваемые радиус угла звезды.
  • Позволяет установить OnRatingBarChangeListener
  • Заполнение звездочек может начинаться слева направо или справа налево (поддержка языка RTL).
  • AnimationBuilder интегрирован в представление, чтобы установить рейтинг программно с анимацией.

Here is a preview of it.

Чтобы изменить width, вы можете изменить его, как и с любым другим видом (more info). Например:

ratingBar.getLayoutParams().width = newWidth; 
ratingBar.invalidate(); 

Вы можете найти его или в jcenter или в Maven Central. Таким образом, в файл build.gradle просто добавить к вашей зависимости:

compile 'com.iarcuschin:simpleratingbar:0.1.+'

Я надеюсь, что это полезно.

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

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