android ratingbar 星星间距怎么设置半个星

RatingBar自定义设置 - 点点滴滴 - ITeye技术网站
博客分类:
1.&?xml version="1.0" encoding="utf-8"?&&resources& &style name="foodRatingBar" parent="@android:style/Widget.RatingBar"&
&item name="android:progressDrawable"&@drawable/food_ratingbar_full&/item&
&item name="android:minHeight"&48dip&/item&
&item name="android:maxHeight"&48dip&/item& &/style&&/resources&
&?xml version="1.0" encoding="utf-8"?&&layer-list xmlns:android=""&
&item android:id="@+android:id/background"
android:drawable="@drawable/food_ratingbar_full_empty" /&
&item android:id="@+android:id/secondaryProgress"
android:drawable="@drawable/food_ratingbar_full_empty" /&
&item android:id="@+android:id/progress"
android:drawable="@drawable/food_ratingbar_full_filled" /&&/layer-list&
&?xml version="1.0" encoding="utf-8"?&
&!-- This is the rating bar drawable that is used toshow a filled cookie. --&&selector
xmlns:android=""&
&item android:state_pressed="true"
android:state_window_focused="true"
android:drawable="@drawable/cookie" /&
&item android:state_focused="true"
android:state_window_focused="true"
android:drawable="@drawable/cookie" /&
&item android:state_selected="true"
android:state_window_focused="true"
android:drawable="@drawable/cookie" /&
&item android:drawable="@drawable/cookie" /&
&/selector&
&RatingBar
android:id="@+id/my_rating_bar"
style="@style/foodRatingBar" /&
wang_peng1
浏览: 1863017 次
来自: 北京
呵呵,呵呵
感觉你所的不清楚
lstView.setOnTouchLi ...
果然是大神啊!!!1)">1)">1" ng-class="{current:{{currentPage==page}}}" ng-repeat="page in pages"><li class='page' ng-if="(endIndex<li class='page next' ng-if="(currentPage
相关文章阅读Android星星评分控件RatingBar的使用
在Android的开发中,有一个叫做评分控件RatingBar,我们可以使用该控件做等级划分、评分等作用,星星形状显示,也可以半星级别,我们来看一下评分控件如何使用。
布局文件中定义控件以及属性,这里主要需要指定的是总星星数量,和当前的值,也就是总级别跟当前级别的量。
&RatingBar
android:id="@+id/ratingBar"
android:numStars="5" //总级别,总分,星星个数
android:rating="1.5"& //当前级别,分数,星星个数
android:layout_width="wrap_content"
android:layout_height="wrap_content"&
&/RatingBar&
评分控件中两个比较重要的方法:
RatingBar.setRating(flaot rating);
RatingBar.getRating();
事件监听处理:
RatingBar.setOnRatingBarChangeListener(new
OnRatingBarChangeListener(){
&&& public void
onRatingChanged(RatingBar ratingBar, float
rating,& boolean fromUser) {
&&&&&&&&&&
//doing actions
Android 中文 API& ——
RatingBar&
  一、结构
    public
class RatingBar extends AbsSeekBar
    java.lang.Object
&&&&&&&&&&&&&&
  & android.widget.ProgressBar
&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&
  android.widget.RatingBar
  二、概述
  RatingBar是基于SeekBar和ProgressBar的扩展,用星型来显示等级评定。使用RatingBar的默认大小时,用户可以触摸/拖动或使用键来设置评分,它有两种样式(小风格用ratingBarStyleSmall,大风格用ratingBarStyleIndicator),其中大的只适合指示,不适合于用户交互。
  当使用可以支持用户交互的RatingBar时,无论将控件(widgets)放在它的左边还是右边都是不合适的。
  只有当布局的宽被设置为wrap&content时,设置的星星数量(通过函数setNumStars(int)或者在XML的布局文件中定义)将显示出来(如果设置为另一种布局宽的话,后果无法预知)。
  次级进度一般不应该被修改,因为他仅仅是被当作星型部分内部的填充背景。
  三、嵌套类
  接口:RatingBar.OnRatingBarChangeListener
  一个回调函数,当星级进度改变时修改客户端的星级。
  四、XML属性
android:isIndicator
RatingBar是否是一个指示器(用户无法进行更改)
android:numStars
显示的星型数量,必须是一个整形值,像“<span STYLE="FonT-FAMiLY: 'Arial','sans-serif'; CoLor: #0”。
android:rating
默认的评分,必须是浮点类型,像“<span STYLE="FonT-FAMiLY: 'Arial','sans-serif'; CoLor: #.2”。
android:stepSize
评分的步长,必须是浮点类型,像“<span STYLE="FonT-FAMiLY: 'Arial','sans-serif'; CoLor: #.2”。
  五、公共方法
public int getNumStars ()
    返回显示的星型数量
      返回值
&&&&&&&&&&&&&&&
  显示的星型数量
  public RatingBar.OnRatingBarChangeListener
getOnRatingBarChangeListener ()
监听器(可能为空)监听评分改变事件
  public float getRating ()
  获取当前的评分(填充的星型的数量)
  返回值
  当前的评分
  public float getStepSize ()
  获取评分条的步长
  返回值
  public boolean isIndicator ()
&&&&&&&&&&&&&&&
判断当前的评分条是否仅仅是一个指示器(注:即能否被修改)
  public void setIsIndicator (boolean
isIndicator)
  设置当前的评分条是否仅仅是一个指示器(这样用户就不能进行修改操作了)
  isIndicator
Bool值,是否是一个指示器
  public synchronized void setMax (int
  设置评分等级的范围,从0到max
评分条最大范围。
  public void setNumStars (int
  设置显示的星型的数量。为了能够正常显示它们,建议将当前widget的布局宽度设置为
wrap content
  numStars
星型的数量
  public void setOnRatingBarChangeListener
(RatingBar.OnRatingBarChangeListener listener)
  设置当评分等级发生改变时回调的监听器
  listener
  public void setRating (float
  设置分数(星型的数量)
  rating
设置的分数
  public void setStepSize (float
  设置当前评分条的步长(step size)
  stepSize 评分条的步进。例如:如果想要半个星星,它的值为0.5。
  六、受保护方法
  protected
synchronized void
onMeasure (int
widthMeasureSpec, int heightMeasureSpec)
  权衡 view
和 content
来决定它的宽度和高度的整齐。它被measure(int,
int) 调用 并且应该被子类所覆盖,以便提供准确高效的布局测量。
当覆盖这个方法的时候,你必须调用
setMeasuredDimension(int,
int)以便存储精确的视图的宽和高。如果不这样做的话将触发llegalStateException异常,被函数
measure(int,
int)抛出。调用父类
onMeasure(int,
int)是合理的。
  尺寸的基本类的实现默认是背景大小,除非通过MeasureSpec允许大的尺寸。子类应该覆盖
onMeasure(int, int)
以便提供更好的布局大小。
如果这个方法被覆盖,子类应该负责确保标准的宽和高至少是视图的最小宽度和高度的值(分别为getSuggestedMinimumHeight()
和 getSuggestedMinimumWidth()两方法)。
    参数
    widthMeasureSpec&&&&
受主窗口支配的水平空间要求。这个需求通过
View.MeasureSpec.进行编码。
      heightMeasureSpec&&
受主窗口支配的垂直空间要求。这个需求通过
View.MeasureSpec.进行编码。&
  七、补充
    文章链接
&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&
    示例代码()
public&class&AndroidRatingBar&extends&Activity&{
&&&@Override
&&&public&void&onCreate(Bundle&savedInstanceState)&{
&&&&&&&super.onCreate(savedInstanceState);
&&&&&&&setContentView(R.layout.main);
&&&&&&&final&RatingBar&ratingBar_Small&=&(RatingBar)findViewById(R.id.ratingbar_Small);
&&&&&&&final&RatingBar&ratingBar_Indicator&=&(RatingBar)findViewById(R.id.ratingbar_Indicator);
&&&&&&&final&RatingBar&ratingBar_default&=&(RatingBar)findViewById(R.id.ratingbar_default);
&&&&&&&ratingBar_default.setOnRatingBarChangeListener(new&RatingBar.OnRatingBarChangeListener(){
&&&public&void&onRatingChanged(RatingBar&ratingBar,&float&rating,
&&&&&boolean&fromUser)&{
&&&&ratingBar_Small.setRating(rating);
&&&&ratingBar_Indicator.setRating(rating);
&&&&Toast.makeText(AndroidRatingBar.this,&"rating:"+String.valueOf(rating),
&&&&&&Toast.LENGTH_LONG).show();
&?xml&version="1.0"&encoding="utf-8"?&
&LinearLayout&xmlns:android="/apk/res/android"
&&&android:orientation="vertical"
&&&android:layout_width="fill_parent"
&&&android:layout_height="fill_parent"
&TextView&
&&&android:layout_width="fill_parent"
&&&android:layout_height="wrap_content"
&&&android:text="@string/hello"
&RatingBar&
&&&android:layout_width="wrap_content"
&&&android:layout_height="wrap_content"
&&&style="?android:attr/ratingBarStyleIndicator"
&&&android:id="@+id/ratingbar_Indicator"
&RatingBar&
&&&android:layout_width="wrap_content"
&&&android:layout_height="wrap_content"
&&&style="?android:attr/ratingBarStyleSmall"
&&&android:id="@+id/ratingbar_Small"
&&&android:numStars="20"
&RatingBar&
&&&android:layout_width="wrap_content"
&&&android:layout_height="wrap_content"
&&&style="?android:attr/ratingBarStyle"
&&&android:id="@+id/ratingbar_default"
&/LinearLayout&
  本文为"madgoat"和"wallace2010"联合署名,原因是翻译重了,不过两个翻译得都很好,这样翻译重的事件也将随着管理的完善得意解决,感谢两位的相互理解,感谢大家的支持!
已投稿到:
以上网友发言只代表其个人观点,不代表新浪网的观点或立场。1)">1)">1" ng-class="{current:{{currentPage==page}}}" ng-repeat="page in pages"><li class='page' ng-if="(endIndex<li class='page next' ng-if="(currentPage
相关文章阅读}

我要回帖

更多关于 ratingbar 星星间距 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信