`
woshixushigang
  • 浏览: 581201 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类

Android 控件之RatingBar评分条

阅读更多

Android 控件之RatingBar评分条

RatingBar是Adnroid中的评分条。效果挺得的

 

源码下载

一、概述

    RatingBar是SeekBar和ProgressBar的扩展,用星星来评级。使用的默认大小RatingBar时,用户可以触摸/拖动或使用键来设置评分,它有俩种样式(大、小),其中大的只适合指示,不适合于用户交互。

二、实例

1.布局文件

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:paddingLeft="10dip"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <RatingBar android:id="@+id/ratingbar1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:numStars="3"
        android:rating="2.5" />

    <RatingBar android:id="@+id/ratingbar2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:numStars="5"
        android:rating="2.25" />

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginTop="10dip">
        
        <TextView android:id="@+id/rating"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content" />
            
        <RatingBar android:id="@+id/small_ratingbar"
            style="?android:attr/ratingBarStyleSmall"
            android:layout_marginLeft="5dip"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="center_vertical" />
            
    </LinearLayout>

    <RatingBar android:id="@+id/indicator_ratingbar"
        style="?android:attr/ratingBarStyleIndicator"
        android:layout_marginLeft="5dip"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center_vertical" />
            
</LinearLayout>

 2.Java代码

package wjq.WidgetDemo;

import android.app.Activity;
import android.os.Bundle;
import android.widget.RatingBar;
import android.widget.TextView;
import android.widget.RatingBar.OnRatingBarChangeListener;

public class RatingBarDemo extends Activity implements
  OnRatingBarChangeListener {
 private RatingBar mSmallRatingBar;
 private RatingBar mIndicatorRatingBar;
 private TextView mRatingText;

 /*
  * (non-Javadoc)
  * 
  * @see android.app.Activity#onCreate(android.os.Bundle)
  */
 @Override
 protected void onCreate(Bundle savedInstanceState) {
  // TODO Auto-generated method stub
  super.onCreate(savedInstanceState);
  setContentView(R.layout.ratingbarpage);
  
   mRatingText = (TextView) findViewById(R.id.rating);

         // We copy the most recently changed rating on to these indicator-only
         // rating bars
         mIndicatorRatingBar = (RatingBar) findViewById(R.id.indicator_ratingbar);
         mSmallRatingBar = (RatingBar) findViewById(R.id.small_ratingbar);
         
         // The different rating bars in the layout. Assign the listener to us.
         ((RatingBar)findViewById(R.id.ratingbar1)).setOnRatingBarChangeListener(this);
         ((RatingBar)findViewById(R.id.ratingbar2)).setOnRatingBarChangeListener(this);
 }

 @Override
 public void onRatingChanged(RatingBar ratingBar, float rating,
   boolean fromUser) {
   final int numStars = ratingBar.getNumStars();
         mRatingText.setText( 
                  " 受欢迎度" + rating + "/" + numStars);

         // Since this rating bar is updated to reflect any of the other rating
         // bars, we should update it to the current values.
         if (mIndicatorRatingBar.getNumStars() != numStars) {
             mIndicatorRatingBar.setNumStars(numStars);
             mSmallRatingBar.setNumStars(numStars);
         }
         if (mIndicatorRatingBar.getRating() != rating) {
             mIndicatorRatingBar.setRating(rating);
             mSmallRatingBar.setRating(rating);
         }
         final float ratingBarStepSize = ratingBar.getStepSize();
         if (mIndicatorRatingBar.getStepSize() != ratingBarStepSize) {
             mIndicatorRatingBar.setStepSize(ratingBarStepSize);
             mSmallRatingBar.setStepSize(ratingBarStepSize);
         }

 }

}

 

分享到:
评论

相关推荐

    Android 开发】:UI控件之 RatingBar 评分控件的使用

    RatingBar主要用在电子相册、网上书店和对文章进行评分的功能。... 对于博文地址:【Android 开发】:UI控件之 RatingBar 评分控件的使用 http://blog.csdn.net/xukunhui2/article/details/9034413

    Android控件之RatingBar自定义星级评分样式

    【Android控件之RatingBar自定义星级评分样式】 RatingBar是Android系统提供的一个用于表示评分的控件,它通常以星星的形式展示用户给出的评分。默认情况下,RatingBar会显示一系列填充或空心的绿色星星,但开发者...

    安卓自定义控件相关-android自定义评分控件ratingbar.rar

    本资源"安卓自定义控件相关-android自定义评分控件ratingbar.rar"提供了关于如何在Android平台上实现自定义评分条(RatingBar)的示例。下面将详细阐述自定义评分控件的相关知识点。 1. **自定义View的基础** 在...

    android 评分条 RatingBar 使用及自定义

    在Android开发中,RatingBar是一个常用的UI组件,用于展示用户评价或者打分的场景,比如电影评分、商品评价等。本篇文章将详细讲解如何使用和自定义RatingBar,以满足不同设计需求。 首先,RatingBar的基本用法是...

    android自定义评分控件ratingbar

    在Android开发中, RatingBar 是一个内置的控件,用于显示评分或评级,通常以星形图标表示。然而,原生的RatingBar样式有限,不能满足所有设计需求。因此,开发者有时会选择自定义RatingBar来实现更个性化的视觉效果...

    android定制评分RatingBar带注释

    - RatingBar是Android SDK中的一个标准控件,继承自ProgressBar,用于显示星形评分。 - 默认的RatingBar提供了基本的星星数量和选中状态,但往往不能满足复杂的设计需求。 2. **自定义RatingBar**: - 自定义...

    Android RatingBar投票条实例

    RatingBar是Android SDK中的一个控件,它呈现为一系列可选的星星,用户可以通过点击选择星星的数量来给出评分。RatingBar有两种样式:连续和半连续。连续模式下,用户可以选择任意分数;半连续模式下,只能选择整数...

    Android安卓自定义RatingBar控件(解决了多分辨率问题,以及被截取或者有阴影的问题)

    在Android开发中,RatingBar控件是一个常用的UI组件,它用于显示用户对某项内容的评分,通常表现为星星图标。然而,系统默认的RatingBar在实际应用中可能会遇到一些问题,比如在不同分辨率的设备上显示不一致,或者...

    Android控件封装之RatingBar(三)图片资源

    在Android开发中, RatingBar 是一个非常常用的控件,它用于显示用户评级或者评价的星星数量,常用于评分系统或评论功能。本篇文章将详细探讨如何在RatingBar中使用自定义的图片资源,以实现更加个性化和美观的效果...

    Android UI控件RatingBar实现自定义星星评分效果

    在Android开发中,RatingBar是一个常用的UI控件,用于实现星星评分效果,用户可以通过点击星星来选择一个评分等级。在本篇文章中,我们将探讨如何利用RatingBar实现自定义的星星评分效果。 首先,RatingBar的基本...

    《Android开发视频教程》RatingBar评分控件的使用.zip

    《Android开发视频教程》RatingBar评分控件的使用.zip

    自定义评分控件RatingBar

    在Android开发中,RatingBar是一种常用的用户界面组件,它允许用户进行评分选择,通常表现为星形图标。本篇文章将深入探讨如何自定义RatingBar,以满足特定的设计需求和交互效果。 首先,我们要了解RatingBar的基本...

    Android评分控件RatingBar使用实例解析

    在Android SDK 中提供了 RatingBar控件来实现相应的工作。 &lt;RatingBar&gt;标签有几个常用评分相关属性 android:numStars,指定评分五角星数。 android:rating,指定当前分数 android:stepSize, 指定分数增量 ...

    Android自定义控件RatingBar调整字体大小

    【Android自定义控件RatingBar调整字体大小】 在Android开发中,RatingBar是一个常见的控件,用于显示评分或评级。然而,系统默认的RatingBar功能有限,无法满足所有设计需求,例如调整字体大小以适应不同场景。...

    Android_控件运用

    4. **Android 控件之 RatingBar** RatingBar 是一个显示星形评分的控件,用户可以拖动滑块来改变评分,常用于评价或评级场景。 5. **Android 控件之 ImageSwitcher** ImageSwitcher 用于在两个图像之间进行快速...

    Android星级评分条控件RatingBar使用详解

    Android星级评分条控件RatingBar是Android开发中常用的一种控件,常用于实现类似购物应用中的商品评分功能。在本文中,我们将深入探讨RatingBar的使用方法、属性、事件处理以及如何进行自定义样式设计。 首先,...

    android星星评分控件

    在Android开发中,星星评分控件(RatingBar)是一个常用组件,用于用户对内容进行评分或显示已有的平均评分。本篇文章将详细讲解如何在Android应用中实现自定义大小和形状的星星评分控件。 首先,`RatingBar`是...

Global site tag (gtag.js) - Google Analytics