RatingBar:星级评分条与拖动条十分相似,它们有相同的父类:AbsSeekBar

星级评分条:

XML属性
说明
android:isIndicator
是否允许用户改变(true为不允许)
android:numStars
设置总共有多少颗星星
android:rating
设置默认星级
android:stepSize
设置每次最少需要改变多少个星级

布局文件:

 

  1. <?xml version="1.0" encoding="utf-8"?> 
  2. <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
  3. android:orientation="vertical" 
  4. android:layout_width="fill_parent" 
  5. android:layout_height="fill_parent" 
  6. > 
  7.  
  8.         <ImageView   
  9.             android:id="@+id/p_w_picpathi3" 
  10.             android:layout_width="fill_parent" 
  11.             android:layout_height="300px" 
  12.             android:src="@drawable/i3" 
  13.             /> 
  14.  
  15.             <TextView 
  16.                 android:id="@+id/seektv" 
  17.                 android:layout_width="wrap_content" 
  18.                 android:layout_height="wrap_content" 
  19.                 android:layout_x="150dp" 
  20.                 android:text="" /> 
  21.           
  22.  
  23.         <SeekBar 
  24.             android:id="@+id/seekbar" 
  25.             android:layout_width="fill_parent" 
  26.             android:layout_height="wrap_content" 
  27.             android:max="100" 
  28.             android:progress="50" 
  29.             /> 
  30.  
  31.         <RatingBar 
  32.             android:id="@+id/ratingbar" 
  33.             android:layout_width="fill_parent" 
  34.             android:layout_height="wrap_content" 
  35.             android:max="100" 
  36.             android:progress="50" 
  37.             android:isIndicator="false" 
  38.             android:numStars="100" 
  39.             android:stepSize="0.05" 
  40.             /> 
  41.  
  42. </LinearLayout> 

seekBar,RatingBar拖动条_职场

利用seekbar和Ratingbar改编照片alpha值:

  1. import android.app.Activity;  
  2. import android.os.Bundle;  
  3. import android.widget.ImageView;  
  4. import android.widget.RatingBar;  
  5. import android.widget.SeekBar;  
  6. import android.widget.TextView;  
  7. import android.widget.RatingBar.OnRatingBarChangeListener;  
  8. import android.widget.SeekBar.OnSeekBarChangeListener;  
  9.  
  10. public class AndroidtestActivity13 extends Activity {  
  11.     private ImageView iv;  
  12.     private TextView tv;  
  13.     private SeekBar sb;  
  14.     private RatingBar rb;  
  15.     @Override 
  16.     public void onCreate(Bundle savedInstanceState)  
  17.     {  
  18.             super.onCreate(savedInstanceState);  
  19.             setContentView(R.layout.main13);  
  20.               
  21.             iv=(ImageView) findViewById(R.id.p_w_picpathi3);  
  22.             tv=(TextView) findViewById(R.id.seektv);  
  23.             sb=(SeekBar) findViewById(R.id.seekbar);  
  24.             rb=(RatingBar) findViewById(R.id.ratingbar);  
  25.               
  26.             iv.setAlpha((int) (sb.getProgress()*2.55));  
  27.             tv.setText(String.valueOf(sb.getProgress()));  
  28.             rb.setProgress(sb.getProgress());  
  29.             //sb.setOnSeekBarChangeListener(seekbarchangelistener);  
  30.             rb.setOnRatingBarChangeListener(ratingbarchangelistener);  
  31.     }  
  32.     //seekbar改变监听事件  
  33.     private OnSeekBarChangeListener seekbarchangelistener=new OnSeekBarChangeListener() {  
  34.           
  35.         @Override 
  36.         public void onStopTrackingTouch(SeekBar seekBar) {  
  37.         }  
  38.           
  39.         @Override 
  40.         public void onStartTrackingTouch(SeekBar seekBar) {  
  41.         }  
  42.           
  43.         @Override 
  44.         public void onProgressChanged(SeekBar seekBar, int progress,  
  45.                 boolean fromUser) {  
  46.             iv.setAlpha((int) (progress*2.55));  
  47.             tv.setText(String.valueOf(progress));  
  48.             rb.setProgress(progress);  
  49.         }  
  50.     };  
  51.     //ratingbar改变监听事件  
  52.     private OnRatingBarChangeListener ratingbarchangelistener=new OnRatingBarChangeListener() {  
  53.           
  54.         @Override 
  55.         public void onRatingChanged(RatingBar ratingBar, float rating,  
  56.                 boolean fromUser) {  
  57.             iv.setAlpha((int) (rating*2.55));  
  58.             tv.setText(String.valueOf(rating));  
  59.             sb.setProgress((int) rating);  
  60.               
  61.         }  
  62.     };