自定义实现RatingBar

RatingBar是Android中常用的一个组件,但是发现一个问题就是不同系统版本的RatingBar表现的不太一样

前面的是在Android 2.3版本的表现形式,后面的是在Android 4.0以上版本的表现形式,但是在我们常见的app中一般都要求体验风格要统一,这就要求我们自定义来实现RatingBar的图片

首先要找到要用的图片,其实我们常见的Android图标在sdk中就可以找到位置是:android-sdk-windows\platforms\android-20\data\res\drawable-hdpi,在这里我们可以看到所有我们常见的组件的图片,这样选取图片就方便了很多

下面直接上代码

    <RatingBar
        android:id="@+id/rating"
        style="@style/RatingBar"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:numStars="5"
        android:rating="2" />
    <style name="RatingBar" parent="@android:style/Widget.RatingBar">
        <item name="android:progressDrawable">@drawable/rating_background</item>
    </style>

rating_background.xml

<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android" >

    <item
        android:id="@android:id/background"
        android:drawable="@drawable/btn_rating_star_off_normal_holo_light">
    </item>
    <item
        android:id="@android:id/progress"
        android:drawable="@drawable/btn_rating_star_on_focused_holo_dark">
    </item>

</layer-list>

这样就可以使app在不同版本的手机都显示同样的效果,如果你愿意的话也可以让图标是小红花或小红旗什么的,随意啦。

时间: 2024-11-08 21:54:26

自定义实现RatingBar的相关文章

Android开发:自定义的RatingBar图标显示不全的解决方案

想自定义一个RatingBar,网上有很多的教程,一步步的定义好了,运行,突然发现显示不完整,如下: 很郁闷,找不到原因,网上搜索,发现了一大堆的答案,都是解决不了,有一个办法是把图片的分辨率降低,如这个答案说的 http://stackoverflow.com/questions/12382632/how-to-set-the-custom-size-of-the-stars-in-ratingbar 可是,为什么别人运行的好好的呢,突然灵感一现,把自定义RatingBar的Drawable资

Ratingbar UseGuide

Ratingbar UseGuide Ratingbar是一个评分控件,系统给我们提供了这样一个控件,样式如下: 相信大家都见过这样一个控件.本文将详细的讲解Ratingbar的使用和改造. 系统默认Ratingbar RatingBar是基于SeekBar(拖动条)和ProgressBar(状态条)的扩展,用星形来显示等级评定. 我们来看下系统默认的Ratingbar: 这三种Ratingbar是系统给我们提供的样式,代码分别如下: <RatingBar android:id="@+id

Android基础入门教程——2.3.9 RatingBar(星级评分条)

Android基础入门教程--2.3.9 RatingBar(星级评分条) 标签(空格分隔): Android基础入门教程 本节引言: 上一节的SeekBar是不是很轻松咧,本节我们学的这个RatingBar(星级评分条)也非常简单,相信在某宝, 买过东西的对这个应该不陌生,收到卖家的包裹,里面很多时候会有个小纸片,五星好评返还多少元这样, 而评分的时候就可以用到我们这个星级评分条了~先来瞅瞅官方文档 官方文档:RatingBar 我们可以看到,这玩意和SeekBar的类结构是一样的,也是Pro

RatingBar(星级评分条)

本节引言: 上一节的SeekBar是不是很轻松咧,本节我们学的这个RatingBar(星级评分条)也非常简单,相信在某宝, 买过东西的对这个应该不陌生,收到卖家的包裹,里面很多时候会有个小纸片,五星好评返还多少元这样, 而评分的时候就可以用到我们这个星级评分条了~先来瞅瞅官方文档 官方文档:RatingBar 我们可以看到,这玩意和SeekBar的类结构是一样的,也是ProgressBar的子类: 也就是说他同样有用ProgressBar的相关属性,接下来我们来探究RatingBar特有的属性!

高级UI组件

1.进度条 (1).圆形进度条(一般默认为圆形进度条) <ProgressBar android:layout_width="wrap_content" android:layout_height="wrap_content" /> (2)条状进度条 <ProgressBar android:id="@+id/progressBar" style="?android:attr/progressBarStyleHoriz

IOS-一步一步教你自定义评分星级条RatingBar

本文转载至 http://blog.csdn.net/hanhailong726188/article/details/42344131 由于项目的需要,需要设计能评分.能显示评分数据的星级评分条,但是IOS上好像没有这个控件,Android是有RatingBar这个控件的(又发现一个IOS不如Android好的),那就只能自定义了,在网上也找了相关的例子,发现都是很老的版本了,非ARC版本的,而且不能评分成0分,还没有indicator效果,于是我自己重新写了一个控件,命名为RatingBar

RatingBar的自定义

RatingBar的实现其实是很简单的,只要在xml布局文件中写就行了 范例: 在主布局文件中,只需要写<RatingBar/>即可 main.xml 1 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 2 xmlns:tools="http://schemas.android.com/tools" 3 android:layout_width=&

android评分条RatingBar自定义设置

RatingBar为评分条控件,默认效果为若干个绿色的星星,如果想将其换成其他自定义图片就要自定义它的style.首先是布局文件: 1 <RatingBar android:id="@+id/app_ratingbar" style="@style/MyRatingBar" 2 android:layout_marginTop="4dip" android:layout_width="wrap_content" 3 an

IOS-一步一步教你自定义评分星级条RatingBar ——转载的

由于项目的需要,需要设计能评分.能显示评分数据的星级评分条,但是IOS上好像没有这个控件,Android是有RatingBar这个控件的(又发现一个IOS不如Android好的),那就只能自定义了,在网上也找了相关的例子,发现都是很老的版本了,非ARC版本的,而且不能评分成0分,还没有indicator效果,于是我自己重新写了一个控件,命名为RatingBar 先上一张我们做之后的效果图: 第一步: 写一个继承自UIView的RatingBar子控件 第二步: 声明一个RatingBar修改评分