Android之RatingBar实现评论星级效果

举报
yechaoa 发表于 2022/05/30 23:44:02 2022/05/30
【摘要】 效果图: 1.布局 <RatingBar android:id="@+id/ratingbar" android:layout_width="wrap_content" android:layout_height="wrap_content" androi...

效果图:



1.布局


  
  1. <RatingBar
  2. android:id="@+id/ratingbar"
  3. android:layout_width="wrap_content"
  4. android:layout_height="wrap_content"
  5. android:numStars="5" //设置数量
  6. android:rating="3" //设置默认选中
  7. style="@style/mRatingBar"
  8. android:progressTint="@android:color/holo_orange_dark" //设置颜色
  9. android:stepSize="1" /> //设置选中数值



  
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <layer-list xmlns:android="http://schemas.android.com/apk/res/android">
  3. <item android:id="@android:id/background" android:drawable="@drawable/ratingbar_normal" />
  4. <item android:id="@android:id/secondaryProgress" android:drawable="@drawable/ratingbar_normal" />
  5. <item android:id="@android:id/progress" android:drawable="@drawable/ratingbar_checked" />
  6. </layer-list>


3.style


  
  1. <style name="mRatingBar" parent="@android:style/Widget.RatingBar">
  2. <item name="android:progressDrawable">@drawable/ratingbar</item>
  3. <item name="android:minHeight">38dp</item>
  4. <item name="android:maxHeight">38dp</item> //这里是图片的高度
  5. </style>



  
  1. RatingBar mRatingBar = (RatingBar) findViewById(R.id.ratingbar);
  2. mRatingBar.setOnRatingBarChangeListener(new RatingBar.OnRatingBarChangeListener() {
  3. @Override
  4. public void onRatingChanged(RatingBar ratingBar, float rating, boolean fromUser) {
  5. Toast.makeText(MainActivity.this, "评分星级=" + rating, Toast.LENGTH_SHORT).show();
  6. }
  7. });


设置监听,第二个参数就是数值

也可以用对象去get

float rating = mRatingBar.getRating();//获取星级
 



Demo地址:https://github.com/yechaoa/RatingBarDemo



文章来源: blog.csdn.net,作者:yechaoa,版权归原作者所有,如需转载,请联系作者。

原文链接:blog.csdn.net/yechaoa/article/details/53861565

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。