Android开发之自定义星星评分控件RatingBar用法示例
程序员文章站
2022-11-14 10:09:40
本文实例讲述了android开发之自定义星星评分控件ratingbar用法。分享给大家供大家参考,具体如下:
星级评分条ratingbar类似于seekbar、progr...
本文实例讲述了android开发之自定义星星评分控件ratingbar用法。分享给大家供大家参考,具体如下:
星级评分条ratingbar类似于seekbar、progressbar'等等都可以自定义样式
它的主要用途就比如淘宝、景点 满意度等
这里给出两种自定义效果
如图所示 第一种是通过ratingbar获得分数 第二个是通过ratingbar动态调节控件属性(透明度)
由于ratngbar使用简单
自定义样式方法和 一样
在drawable中建一个xml文件写一个 layer-list 就行
这里直接给出它的使用方法:
public class mainactivity extends activity { ratingbar ratingbar ;ratingbar ratingbar02 ; textview textview ; imageview imageview ; @override protected void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); setcontentview(r.layout.activity_main); ratingbar = (ratingbar) findviewbyid(r.id.rating); ratingbar02 = (ratingbar) findviewbyid(r.id.rating02); textview = (textview) findviewbyid(r.id.textview); imageview = (imageview) findviewbyid(r.id.image); ratingbar.setonratingbarchangelistener(new ratingbar.onratingbarchangelistener() { @override public void onratingchanged(ratingbar ratingbar, float rating, boolean fromuser) { textview.settext(string.valueof((int) (rating))); } }); ratingbar02.setonratingbarchangelistener(new ratingbar.onratingbarchangelistener() { @override public void onratingchanged(ratingbar ratingbar, float rating, boolean fromuser) { imageview.setalpha((int)(rating*255/5)); } }); } }
然后是布局文件:
文件中的属性 与progressbar一样
<?xml version="1.0" encoding="utf-8" ?> <linearlayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical"> <textview android:id="@+id/textview" android:layout_width="match_parent" android:layout_height="75dp" android:gravity="center_horizontal" android:textsize="50dp"/> <!--android:progressdrawable自定义样式--> <ratingbar android:id="@+id/rating" android:layout_width="match_parent" android:layout_height="wrap_content" android:numstars="5" android:max="255" android:progress="255" android:stepsize="0.5"/> <imageview android:id="@+id/image" android:layout_width="match_parent" android:layout_height="wrap_content" android:src="@drawable/huangjindiao"/> <ratingbar android:id="@+id/rating02" android:layout_width="match_parent" android:layout_height="wrap_content" android:numstars="5" android:progressdrawable="@drawable/my_bar" android:stepsize="0.5"/> </linearlayout>
更多关于android相关内容感兴趣的读者可查看本站专题:《android控件用法总结》、《android开发入门与进阶教程》、《android视图view技巧总结》、《android编程之activity操作技巧总结》、《android数据库操作技巧总结》及《android资源操作技巧汇总》
希望本文所述对大家android程序设计有所帮助。