前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >关于安卓开发实现拖动条和星级评论

关于安卓开发实现拖动条和星级评论

作者头像
听着music睡
发布2018-05-18 12:15:35
1.1K1
发布2018-05-18 12:15:35
举报
文章被收录于专栏:Android干货Android干货Android干货

拖动条组件(SeekBar)

<SeekBar
        android:id="@+id/seekBar1"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:max="100"      //设置最大值
        android:progress="0"   //设置初值
        android:padding="10px"/>

星级评分条(RatingBar)

<RatingBar
        android:id="@+id/ratingBar1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:numStars="5" //设置几星级
        android:rating="3.5"    //设置初始星级
        android:isIndicator="false"  //设置允许用户改变星级
         />

完整代码

layout

<?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/now_num"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="当前值:0"
        android:textAppearance="?android:attr/textAppearanceLarge" />

    <SeekBar
        android:id="@+id/seekBar1"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:max="100"
        android:progress="0" 
        android:padding="10px"/>

    <RatingBar
        android:id="@+id/ratingBar1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:numStars="5"
        android:rating="3.5"
        android:isIndicator="false"
         />

    <Button
        android:id="@+id/button_star"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="评分" />

</LinearLayout>

java文件

 1 package lianxi;
 2 
 3 import com.example.jichu_lianxi.R;
 4 
 5 import android.app.Activity;
 6 import android.os.Bundle;
 7 import android.util.Log;
 8 import android.view.View;
 9 import android.view.View.OnClickListener;
10 import android.widget.Button;
11 import android.widget.RatingBar;
12 import android.widget.SeekBar;
13 import android.widget.SeekBar.OnSeekBarChangeListener;
14 import android.widget.TextView;
15 import android.widget.Toast;
16 
17 public class SeekBar_Or_RatingBar extends Activity{
18     private SeekBar seekbar;     //拖动条
19     private TextView text;       //显示拖动条当前值的文本框
20     private Button button_star;  //评分按钮
21     private RatingBar ratingbar;
22     @Override
23     protected void onCreate(Bundle savedInstanceState) {
24         // TODO Auto-generated method stub
25         super.onCreate(savedInstanceState);
26         setContentView(R.layout.seekbar_or_ratingbar);
27         
28         seekbar = (SeekBar) findViewById(R.id.seekBar1);
29         text = (TextView) findViewById(R.id.now_num);
30         button_star = (Button) findViewById(R.id.button_star);
31         ratingbar = (RatingBar) findViewById(R.id.ratingBar1);
32         //拖动条的响应事件
33         seekbar.setOnSeekBarChangeListener(new OnSeekBarChangeListener() {   
34             
35             //结束拖动时的响应事件
36             @Override
37             public void onStopTrackingTouch(SeekBar seekBar) {
38                 // TODO Auto-generated method stub
39                 Toast.makeText(SeekBar_Or_RatingBar.this, "结束滑动", Toast.LENGTH_SHORT).show();
40                 
41             }
42             //开始拖动时的响应事件
43             @Override
44             public void onStartTrackingTouch(SeekBar seekBar) {
45                 // TODO Auto-generated method stub
46                 Toast.makeText(SeekBar_Or_RatingBar.this, "开始滑动", Toast.LENGTH_SHORT).show();
47             }
48             //拖动过程中的响应事件
49             @Override
50             public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) {
51                 // TODO Auto-generated method stub
52                 text.setText("当前值:"+progress);    
53             }
54         });
55         //评分按钮的响应事件
56         button_star.setOnClickListener(new OnClickListener() {
57             
58             @Override
59             public void onClick(View v) {
60                 // TODO Auto-generated method stub
61                 int result = ratingbar.getProgress(); //获取进度
62                 float rating = ratingbar.getRating(); //获取等级
63                 float step = ratingbar.getStepSize(); //获取每次最少要改变多少星级
64                 Toast.makeText(SeekBar_Or_RatingBar.this, "你得到了"+rating+"颗星", Toast.LENGTH_SHORT).show();
65                 
66                 
67             }
68         });
69     }
70 
71 }

效果图

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2013-05-06 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档