Android开发中,时不时的就有要实现星星的评分效果,比如某宝,某团,相信大家也都见过,当然了我们可以自己去画,也可以用美工给切的图去实现,其实在Android原生的控件中就可以来实现这样的效果,它就是RatingBar。
来,我们先看一张图(只在代码中引入了控件)
实现效果如下图:
我们先看一下它的继承关系:这玩意和SeekBar的类结构是一样的,也是ProgressBar的子类
相关属性:
android:isIndicator:是否用作指示,用户无法更改,默认false
android:numStars:显示多少个星星,必须为整数
android:rating:默认评分值,必须为浮点数
android:stepSize: 评分每次增加的值,必须为浮点数
除了上面这些,还有两种样式供我们选择咧,但是不建议使用,因为这两种样式都好丑... 他们分别是:
style="?android:attr/ratingBarStyleSmall"
style="?android:attr/ratingBarStyleIndicator"
事件处理: 只需为RatingBar设置OnRatingBarChangeListener事件,然后重写下onRatingChanged()方法即可!
实现代码如下:
public class MainActivity extends AppCompatActivity { private RatingBar rb_normal; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); rb_normal = (RatingBar) findViewById(R.id.rb_normal); rb_normal.setOnRatingBarChangeListener(new RatingBar.OnRatingBarChangeListener() { @Override public void onRatingChanged(RatingBar ratingBar, float rating, boolean fromUser) { Toast.makeText(MainActivity.this, "rating:" + String.valueOf(rating), Toast.LENGTH_LONG).show(); } }); } }
自定义样式阶段:
接下来和前面的SeekBar一样编写一个layer-list的文件:
ratingbar_full.xml:
<?xml version="1.0" encoding="utf-8"?> <layer-list xmlns:android="http://schemas.android.com/apk/res/android"> <item android:id="@android:id/background" android:drawable="@mipmap/ic_rating_off1" /> <item android:id="@android:id/secondaryProgress" android:drawable="@mipmap/ic_rating_off1" /> <item android:id="@android:id/progress" android:drawable="@mipmap/ic_rating_on1" /> </layer-list>
接着在style.xml中自定义下RatingBar Style,在style.xml加上这个:
<style name="roomRatingBar" parent="@android:style/Widget.RatingBar"> <item name="android:progressDrawable">@drawable/ratingbar_full</item> <item name="android:minHeight">24dip</item> <item name="android:maxHeight">24dip</item> </style>
最后在布局中的Ratingbar组件设置下:
<RatingBar android:id="@+id/rb_normal" style="@style/roomRatingBar" android:layout_width="wrap_content" android:layout_height="wrap_content" />
可以实现效果如下图:
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持小牛知识库。
主要内容:本节引言:,1.RatingBar基本使用:,2.定制环节:,本节小结:本节引言: 上一节的SeekBar是不是很轻松咧,本节我们学的这个RatingBar(星级评分条)也非常简单,相信在某宝, 买过东西的对这个应该不陌生,收到卖家的包裹,里面很多时候会有个小纸片,五星好评返还多少元这样, 而评分的时候就可以用到我们这个星级评分条了~先来瞅瞅官方文档 官方文档:RatingBar 我们可以看到,这玩意和SeekBar的类结构是一样的,也是ProgressBar的子类:
本文向大家介绍Android RatingBar星星评分控件实例代码,包括了Android RatingBar星星评分控件实例代码的使用技巧和注意事项,需要的朋友参考一下 效果图: 直接上代码: xml文件: Java代码: 以上所述是小编给大家介绍的Android RatingBar 评分控件,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对呐喊教程网
本节将继续学习一个和进度有关的控件:RatingBar ,在 Android 中 RatingBar 是一个可以支持用户打分的 UI 控件,相比 ProgressBar 而言,RatingBar 不仅仅可以用来展示同时还可以接收用户的输入操作;而相比 SeekBar,RatingBar 则更侧重于与用户的互动性。有了前两节的基础,这一节理解起来也是非常容易的。 1. RatingBar 的特性 从
本文向大家介绍Android评分控件RatingBar使用实例解析,包括了Android评分控件RatingBar使用实例解析的使用技巧和注意事项,需要的朋友参考一下 无论游戏,应用,网站,都少不了评分控件。在Android SDK 中提供了 RatingBar控件来实现相应的工作。 <RatingBar/>标签有几个常用评分相关属性 android:numStars,指定评分五角星数。 andr
本文向大家介绍Android UI控件RatingBar实现自定义星星评分效果,包括了Android UI控件RatingBar实现自定义星星评分效果的使用技巧和注意事项,需要的朋友参考一下 本文实例为大家分享了Android RatingBar星星评分效果的具体代码,供大家参考,具体内容如下 继承关系 AppCompatRatingBar 效果图 xml 上面这些属性也可以用java代码设置。
本文向大家介绍Android评分RationBar控件使用详解,包括了Android评分RationBar控件使用详解的使用技巧和注意事项,需要的朋友参考一下 Android评分RationBar控件,供大家参考,具体内容如下 主要是不想用太多三方的控件,所以决定尽可能自己写,最近有写一个评分的页面,废话不多说直接上图 我觉得嘛 这个东西用ViewGroup包起来感觉会写很多View 于是我决定使