Android入门之RatingBar(纯java)
2011-09-08 20:46
411 查看
import android.app.Activity; import android.os.Bundle; import android.widget.*; import android.widget.RatingBar.OnRatingBarChangeListener; public class RatingBarTest extends Activity { private LinearLayout mainLayout=null;//主容器 private TextView tv1=null; //文本1 private RatingBar rb1=null; //评分组件1 private TextView tv2=null; //文本2 private RatingBar rb2=null; //评分组件2 public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); mainLayout_init(); setContentView(mainLayout);//显示主容器 } /*mainLayout初始化*/ void mainLayout_init(){ mainLayout=new LinearLayout(this); LinearLayout.LayoutParams lp=new LinearLayout.LayoutParams(-2, -2); mainLayout.setLayoutParams(lp); mainLayout.setOrientation(LinearLayout.VERTICAL); tv1_init(); mainLayout.addView(tv1); rb1_init(); mainLayout.addView(rb1); tv2_init(); mainLayout.addView(tv2); rb2_init(); mainLayout.addView(rb2); } /*tv1初始化*/ void tv1_init(){ tv1=new TextView(this); tv1.setText("大图标风格\n"); tv1.append("这里显示得分"); } /*rb1初始化*/ void rb1_init(){ rb1=new RatingBar(this,null,android.R.attr.ratingBarStyle);//默认,大图标风格 LinearLayout.LayoutParams lp=new LinearLayout.LayoutParams(-2, -2); rb1.setLayoutParams(lp); rb1.setNumStars(5);//设置星星个数为5 rb1.setStepSize(0.5f);//设置步长为0.5星 rb1.setRating(2.5f);//默认星星得分为2颗半 //绑定监听 OnRatingBarChangeListener orbcl=new OnRatingBarChangeListener(){ public void onRatingChanged(RatingBar ratingBar, float rating,boolean fromUser) { tv1.setText("大图标风格\n"); //小数点处理 int rat=(int)rating; if(rat==rating){ tv1.append("当前得分:"+rat+"颗星"); }else{ tv1.append("当前得分:"+rating+"颗星"); } } }; rb1.setOnRatingBarChangeListener(orbcl); } /*tv2初始化*/ void tv2_init(){ tv2=new TextView(this); tv2.setText("小图标风格\n"); tv2.append("这里显示得分"); } /*rb2初始化*/ void rb2_init(){ rb2=new RatingBar(this,null,android.R.attr.ratingBarStyleSmall);//小图标风格 LinearLayout.LayoutParams lp=new LinearLayout.LayoutParams(-2, -2); rb2.setLayoutParams(lp); rb2.setIsIndicator(false);//小图标风格评分组件默认仅做指示器,如果要变为可评,必须修改这一属性 rb2.setNumStars(20);//设置星星个数为20 rb2.setStepSize(1.0f);//设置步长为1颗星 rb2.setRating(10.0f);//默认星星得分为10颗星 //绑定监听 OnRatingBarChangeListener orbcl=new OnRatingBarChangeListener(){ public void onRatingChanged(RatingBar ratingBar, float rating,boolean fromUser) { tv2.setText("小图标风格\n"); //小数点处理 int rat=(int)rating; if(rat==rating){ tv2.append("当前得分:"+rat+"颗星"); }else{ tv2.append("当前得分:"+rating+"颗星"); } } }; rb2.setOnRatingBarChangeListener(orbcl); } }
相关文章推荐
- Android入门教程三十一之RatingBar(星级评分条)
- Java代码 自定义Android RatingBar 样式 【调整大小】
- Android入门之RatingBar(评分)
- 评分条RatingBar Android
- Android JNI入门第七篇——C调用Java
- Eclipse中新建android项目中没有R.java文件以及找不到getActionBar()
- ANDROID入门6:在Ubuntu上为Android系统内置Java应用程序测试Application Frameworks层的硬件服务
- Android开发之Java设计模式入门篇
- Android 7.0 之 Java Lambda表达式入门
- Android阶段学习笔记7.22 之 ProgressBar SeekBar RatingBar
- android入门学习-java简介
- 一起Talk Android吧(第六十五回:Android中UI控件之RatingBar)
- Android JNI入门第二篇——Java参数类型与本地参数类型对照
- android:progressBar/seekBar/ratingBar学习记录
- Android开发入门之Action Bar用户交互
- Android入门——WebView使用及Java和JavaScript交互小结
- Java&Android入门学习方法及书目推荐
- Android入门之BroadcastReceiver(纯java)
- Java4Android之单元测试入门
- Android之RatingBar