2016-10-02 233 views
2

有没有办法改变RatingBar Widget的大小,以编程方式不使用XML样式?以编程方式更改RatingBar大小?

我知道我们可以使用xml styles来自定义RatingBar的大小,但它仍然不够通用,我似乎遇到了一些很好的github库来实现这个目标,但他们提供API 15+的成本,我的minSDK是10,所以任何人都可以帮助确定解决方案:

以api编程方式降低ratingBar小部件的大小10

回答

0

这是一个长镜头,但:

  • 如果你只使用星(没有自定义形状)。
  • 您愿意使用API​​ 11+。

我做了一个图书馆,可能会帮助你:SimpleRatingBar

它的特点:

  • 完全工作android:layout_width:它可以被设置为wrap_contentmatch_parent或abritary DP。
  • 任意数量的星星。
  • 任意步长。
  • 恒星的大小可以精确控制或设置最大尺寸。
  • 正常状态下的可自定义颜色(边框,填充和星星和评级栏的背景)。
  • 按下状态下的可自定义颜色(边框,填充和星星和评级栏的背景)。
  • 星星之间的可自定义尺寸分离。
  • 可定制的星星的边框宽度。
  • 可自定义的星星角落半径。
  • 允许设置OnRatingBarChangeListener
  • 星星填充可以设置为从左到右或从右到左(RTL语言支持)开始。
  • AnimationBuilder集成在视图中,以编程方式用动画设置评分。

Here is a preview of it

要更改width,您可以像更改其他视图(more info)那样对其进行更改。例如:

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

你可以找到它无论是在jcenterMaven Central。因此,在您build.gradle文件只是添加到您的依赖关系:

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

我希望它是有用的。

相关问题