zoukankan      html  css  js  c++  java
  • 自定义样式RatingBar的使用

    1.设置布局文件,自定义ratingbar样式

     1 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
     2     xmlns:tools="http://schemas.android.com/tools"
     3     android:layout_width="match_parent"
     4     android:layout_height="match_parent"
     5     tools:context="${relativePackage}.${activityClass}" >
     6 
     7 
     8     <RatingBar
     9         android:id="@+id/rb"
    10         android:layout_width="wrap_content"
    11         android:layout_height="30dp"
    12         android:layout_marginLeft="20dp"
    13         android:layout_marginTop="20dp"
    14         android:numStars="5"
    15         android:progressDrawable="@drawable/rating_star"
    16         android:stepSize="0.5" /> <!-- 自定义ratingbar样式 -->
    17 
    18     <TextView
    19         android:id="@+id/tv_num"
    20         android:layout_width="wrap_content"
    21         android:layout_height="wrap_content"
    22         android:layout_below="@+id/rb"
    23         android:layout_marginLeft="20dp"
    24         android:layout_marginTop="20dp"
    25         android:text="当前评分是:" />
    26 
    27     <TextView
    28         android:id="@+id/tv"
    29         android:layout_width="wrap_content"
    30         android:layout_height="wrap_content"
    31         android:layout_below="@+id/rb"
    32         android:layout_marginTop="20dp"
    33         android:layout_toRightOf="@id/tv_num"
    34         android:text="0.0"
    35         android:textColor="#FF0000" />
    36 
    37 </RelativeLayout>

    2.在activity中设置监听器

     1 package com.example.ratingbar;
     2 
     3 import android.app.Activity;
     4 import android.os.Bundle;
     5 import android.view.Menu;
     6 import android.view.MenuItem;
     7 import android.view.View;
     8 import android.widget.RatingBar;
     9 import android.widget.RatingBar.OnRatingBarChangeListener;
    10 import android.widget.TextView;
    11 
    12 public class MainActivity extends Activity {
    13 
    14     private TextView tv;
    15     private RatingBar rb;
    16 
    17     @Override
    18     protected void onCreate(Bundle savedInstanceState) {
    19         super.onCreate(savedInstanceState);
    20         setContentView(R.layout.activity_main);
    21         //找到控件
    22         tv = (TextView) findViewById(R.id.tv);
    23         rb = (RatingBar) findViewById(R.id.rb);
    24         rb.setOnRatingBarChangeListener(new OnRatingBarChangeListener() {//设置ratingbar监听器
    25             
    26             @Override
    27             public void onRatingChanged(RatingBar ratingBar, float rating, boolean fromUser) {
    28                 if(fromUser){//如果是用户操作
    29                     tv.setText(Float.toString(rating));//显示分数
    30                 }
    31                 
    32             }
    33         });
    34         
    35     }
    36 }

    3.效果图

  • 相关阅读:
    欧几里德算法实现求两个正整数的最大公因子
    C#委托、泛型
    C与C++中的time相关函数(转载)
    【转】温州的南拳
    前端面试题
    vuecli卸载旧版,再重新安装后还显示的是旧的版本
    不定宽高的div水平、垂直居中问题
    解决JS中取URL地址中的参数中文乱码
    移动vue项目,启动错误:Module build failed: Error: No PostCSS Config found in:
    codeblocks colour theme
  • 原文地址:https://www.cnblogs.com/huipengbo/p/6098923.html
Copyright © 2011-2022 走看看