SeekBar 拖动条:拖动条和滚动栏类似,当是拖动条能够拖动滑块改变进度

RatingBar 星级评分条:星级评分条与拖动条相似


SeekBar特有的xml属性

android:thumb 指定一个Arawable对象,作为之定义滑块



RatingBar特有的xml属性

android:isIndicator 是否同意用户改变(true为不同意改动)

android:numStars 共同拥有多少个星级

android:rating 默认的星级

android:stepSize 每次至少改变多少个星级



为了知道改变的进度而做对应的操作,我们须要加入监听

SeekBar 的监听 OnSeekBarChangeListener

RatingBar的监听 OnRatingBarChangeListener


以下我们通过实例来熟悉它们

(1)编写布局文件 activity_main.xml

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"    android:id="@+id/linearLayout"     android:layout_width="match_parent"    android:layout_height="match_parent"    android:orientation="vertical">        <ImageView         android:id="@+id/imgView1"        android:layout_width="120dp"        android:layout_height="100dp"        android:src="@drawable/ic_launcher"/>    <SeekBar         android:id="@+id/seekBar"        android:layout_width="180dp"        android:layout_height="wrap_content"        android:thumb="@drawable/ic_launcher"        android:max="255"        android:progress="255"/>      <ImageView         android:id="@+id/imgView2"        android:layout_width="120dp"        android:layout_height="100dp"        android:src="@drawable/img01"/>      <RatingBar           android:id="@+id/reatingBar"          android:layout_width="wrap_content"          android:layout_height="wrap_content"          android:max="255"          android:progress="255"          android:rating="5"          android:stepSize="0.5"          android:numStars="5"/>    </LinearLayout>

(2)编写 MainActivity.java

package com.example.bar;import android.annotation.TargetApi;import android.app.Activity;import android.os.Build;import android.os.Bundle;import android.util.Log;import android.view.Menu;import android.widget.ImageView;import android.widget.RatingBar;import android.widget.RatingBar.OnRatingBarChangeListener;import android.widget.SeekBar;import android.widget.SeekBar.OnSeekBarChangeListener;@TargetApi(Build.VERSION_CODES.HONEYCOMB)public class MainActivity extends Activity {private ImageView imgViewSB = null; //定义ImageViewprivate ImageView imgViewRB = null;private SeekBar seekBar = null;  //定义SeekBarprivate RatingBar ratingBar = null; //定义RatingBar@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);//布局组件this.imgViewSB = (ImageView) findViewById(R.id.imgView1);this.imgViewRB = (ImageView) findViewById(R.id.imgView2);this.seekBar = (SeekBar) findViewById(R.id.seekBar);this.ratingBar = (RatingBar) findViewById(R.id.reatingBar);//seekBar设置监听,改变图片透明度this.seekBar.setOnSeekBarChangeListener(new OnSeekBarChangeListener() {@Overridepublic void onStopTrackingTouch(SeekBar seekBar) {Log.i("onStopTrackingTouch", "停止拖动触发的方法");}@Overridepublic void onStartTrackingTouch(SeekBar seekBar) {Log.i("onStartTrackingTouch", "開始拖动触发的方法");}/** * seekBar: SeekBar对象 * progress:拖动条的进度 * fromUser:是否用户手动改变 */@Overridepublic void onProgressChanged(SeekBar seekBar, int progress,boolean fromUser) {imgViewSB.setAlpha(progress);  //设置图片的透明度Log.i("onProgressChanged", "拖动滑块位置发生改变时触发的方法");}});//ratingBar设置监听,改变图片透明度this.ratingBar.setOnRatingBarChangeListener(new OnRatingBarChangeListener() {/** * ratingBar:RatingBar对象 * rating :星级的大小 * fromUser:是否用户手动改变 */@Overridepublic void onRatingChanged(RatingBar ratingBar, float rating,boolean fromUser) {imgViewRB.setAlpha((int)(rating*255/5));}});}@Overridepublic boolean onCreateOptionsMenu(Menu menu) {// Inflate the menu; this adds items to the action bar if it is present.getMenuInflater().inflate(R.menu.main, menu);return true;}}

同意之后,效果例如以下:


更多相关文章

  1. 禁止ScrollView内的控件改变之后自动滚动
  2. Recyclerview条目可拖拽可侧滑删除实战详解
  3. android 同步监听输入框,以及电话号码正则表达式!
  4. android实现耳机插入和拔出状态检测
  5. Android(安卓)EditText设置InputType属性时,隐藏系统软键盘失败
  6. android轮播图示例
  7. Android开发历程_6(RadioButton和CheckBox的使用)
  8. Android(安卓)设计模式 之 观察者模式
  9. Android高德地图添加点连点画线

随机推荐

  1. Android(安卓)中支持的几种传感器(加速度
  2. 我的android 第三天 - 自定义Toast
  3. Java乔晓松-android的四大组件之一Servic
  4. Android(安卓)NDK学习 C++ 支持
  5. 【3】windowNoTitle 和 android:windowNo
  6. Android(安卓)操作权限大全 (android.per
  7. Android(安卓)自定义View measure模板
  8. Android学习资料分享(不断更新中)
  9. Android(安卓)View预估大小
  10. 如何打造一个 Android(安卓)编译时注解框