Ratingbar的功能和用法
星級評分條
星級評分條和拖動條有相同的父類absSeekBar
RatingBar和Seekbar(拖動條)的最大區(qū)別在于,RatingBar通過星星來表示進度
? android:max="255" 設置進度條最大值
? ? ? ? android:numStars="5"設置進度條總共幾個星級
? ? ? ? android:progress="255"設置默認的最大值
? ? ? ? android:stepSize="0.5" 設置每次最少改變多少星級
ratingbar本身就是一個特殊的progressbar(進度條)
public class MainActivity extends Activity {
? ? ? ? ImageView iv;
? ? ? ? RatingBar rb;
? ? ? ? @Override
? ? ? ? protected void onCreate(Bundle savedInstanceState) {
? ? ? ? ? ? ? ? // TODO Auto-generated method stub
? ? ? ? ? ? ? ? super.onCreate(savedInstanceState);
? ? ? ? ? ? ? ? setContentView(R.layout.ratingbar);
? ? ? ? ? ? ? ? iv=(ImageView) findViewById(R.id.image);
? ? ? ? ? ? ? ? rb=(RatingBar) findViewById(R.id.ratingbar);
? ? ? ? ? ? ? ? //綁定事件監(jiān)聽
? ? ? ? ? ? ? ? rb.setOnRatingBarChangeListener(new OnRatingBarChangeListener() {
? ? ? ? ? ? ? ? ? ? ? ? @Override
? ? ? ? ? ? ? ? ? ? ? ? public void onRatingChanged(RatingBar arg0, float arg1, boolean arg2) {
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? // TODO Auto-generated method stub
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? //動態(tài)改變圖片的透明度,其中255是星級評分條的最大值
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? //5個星星就代表最大值255
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? //setImageAlpha設置透明
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? iv.setImageAlpha((int) (arg1*255/5));
? ? ? ? ? ? ? ? ? ? ? ? }
? ? ? ? ? ? ? ? });
? ? ? ? }
}
<?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" >
? ? <ImageView
? ? ? ? android:id="@+id/image"
? ? ? ? android:layout_width="match_parent"
? ? ? ? android:layout_height="240dp"
? ? ? ? android:src="@drawable/mia8" />
? ? <!--
? ? ? ? 定義一個星級評分條,改變圖片透明度? ? ? ? android:max="255" 設置進度條最大值
? ? ? ? android:numStars="5"設置進度條總共幾個星級
? ? ? ? android:progress="255"設置默認的最大值
? ? ? ? android:stepSize="0.5" 設置每次最少改變多少星級
? ? -->
? ? <RatingBar
? ? ? ? android:id="@+id/ratingbar"
? ? ? ? android:layout_width="wrap_content"
? ? ? ? android:layout_height="wrap_content"
? ? ? ? android:max="255"
? ? ? ? android:numStars="5"
? ? ? ? android:progress="255"
? ? ? ? android:stepSize="0.5" />
</LinearLayout>
