`

Android中 RatingBar评分条

 
阅读更多

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

<?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"
    android:paddingLeft="10dip" >

    <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_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="center_vertical"
            android:layout_marginLeft="5dip" />
    </LinearLayout>

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

</LinearLayout>

 

package com.example.test;

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自定义Ratingbar星星实现评分

    在Android开发中, RatingBar 是一个非常常见的组件,用于用户对某一内容进行评分。系统默认的RatingBar虽然功能基础,但有时无法满足我们对于界面设计的个性化需求。本篇文章将详细探讨如何根据实际需求自定义...

    Android RatingBar投票条实例

    在Android开发中,RatingBar是一种常用的视图组件,它用于显示用户评价或评分,通常用于电影、产品或服务的评价场景。本实例将深入探讨如何在Android应用中创建和使用RatingBar,适合初级到高级的Android开发者学习...

    android自定义RatingBar

    在Android开发中, RatingBar 是一个内置的UI组件,用于显示评分或评级,通常用于电影、应用或商品评价。然而,系统默认的RatingBar样式可能无法满足所有设计需求,这时就需要进行自定义来达到特定的视觉效果。这篇...

    android 评分条 RatingBar 使用及自定义

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

    android中自定义ratingbar方法(含代码)

    在 Android 开发中,RatingBar 是一个非常常用的组件,用于显示评分或星级評價。但是,系统默认的 RatingBar 样式可能不够美观,于是我们需要自定义 RatingBar 的样式来满足我们的需求。在这篇文章中,我们将介绍...

    android定制评分RatingBar带注释

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

    android 利用RatingBar实现登录加载进度条

    在Android开发中, RatingBar通常用于用户评价,它呈现为一系列可选的星星。然而,这里我们将探讨如何创造性地利用RatingBar来实现一个登录时的加载进度条效果。这个概念可以提升用户体验,使得用户在等待登录验证时...

    android 自定义RatingBar源码实例

    在Android开发中,RatingBar是一种常用的UI组件,它允许用户以星星的形式给出评分。系统默认的RatingBar样式可能无法满足所有设计需求,因此开发者经常需要对其进行自定义以达到更美观的效果。本文将深入探讨如何...

    android定制评分RatingBar

    在Android开发中,RatingBar是一个常用的UI组件,用于展示用户评价或者打分的场景。它通常显示为一系列的星星,用户可以对它们进行选择来表示评分。然而,Android系统默认的RatingBar样式可能无法满足所有设计需求,...

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

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

    Android自定义RatingBar的背景图片

    在Android开发中,RatingBar是一种常用的UI组件,用于展示用户评价或者进度的星星数量。默认情况下,RatingBar的样式和颜色可能无法满足所有设计需求,因此开发者常常需要对其进行自定义,以达到更个性化的视觉效果...

    RecyclerView防RatingBar功能

    在Android开发中,RecyclerView是一个非常重要的组件,它用于展示可滚动的列表数据,而RatingBar则是用户界面中用于评分或反馈满意度的一个控件。在本项目中,我们探讨的是如何在RecyclerView中集成并实现RatingBar...

    android自定义评分控件ratingbar

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

    android ratingbar的使用

    在Android开发中,RatingBar是一个非常实用的组件,它用于显示用户对某个内容的评分或者让用户选择一个评分等级。RatingBar通常表现为一组星星,用户可以通过点击或滑动来选择一个评分,从零星到满星。在本教程中,...

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

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

    androidRatingBar_android_

    这个"androidRatingBar_android_"项目提供了一种实现彩色投票条的方法,它不仅具备基本的RatingBar功能,还通过自定义视觉效果增加了用户体验。让我们深入探讨一下这个项目的相关知识点。 1. **RatingBar组件**: ...

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

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

    android 星级评分条的用法

    在Android开发中,星级评分条(RatingBar)是一种常见的用户界面元素,用于让用户对内容进行评分或反馈满意度。本文将详细介绍如何在Android应用中使用星级评分条,并展示如何改变其图片的透明度。 首先,RatingBar...

    android ratingBar星星demo

    在Android开发中,RatingBar是一种常用的用户界面组件,它用于显示评分或评级,通常以星形图标表示。这个"android ratingBar星星demo"是展示如何在Android应用中使用RatingBar的一个实例。RatingBar的设计和使用涉及...

Global site tag (gtag.js) - Google Analytics