zoukankan      html  css  js  c++  java
  • 坑爹的RatingBar

           Android中的RatingBar控件,设置矮了、窄了就显示不全。网上遍寻自定义大小的文章,简单的问题看得一头雾水,屡试不得。

           突然灵光一现,原来是自己傻了,其实小星星都是系统的或者自备的单个图片,安卓的方法并没去根据宽高同步拉伸,想要符合尺寸的小星星还是得自己先做好。

          下边是方法记录,备忘:

          1.拉伸好想要尺寸的小星星:满的,空的各一张(别指望系统帮你同步拉伸):对应文件 rating_full.png,rating_empty.png

                       

          2.copy到drawble图片文件夹

          3.在Value-style,xml文件中设置好样式 

    <style name="my_ratingBar"  parent="Base.Widget.AppCompat.RatingBar">
        <item name="android:progressDrawable">
            @drawable/my_ratingbar</item>
        <item name="android:minHeight">28dip</item>
        <item name="android:maxHeight">28dip</item>
        </style>
    

      4.在drawble文件夹下新建文件my_ratingbar.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/rating_empty" />
        <item android:id="@android:id/secondaryProgress"
            android:drawable="@drawable/rating_empty" />
        <item android:id="@android:id/progress"
            android:drawable="@drawable/rating_full" />
    
    </layer-list>
    

      5.在布局文件中直接设置style就行了。

        <RatingBar
            android:id="@+id/ratingBar"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            style="@style/my_ratingBar"
            app:layout_constraintStart_toStartOf="parent"
            app:layout_constraintTop_toTopOf="parent" />
    

      

           随便记录一下RatingBar常用属性:

          android:isIndicator:是否用作指示,用户无法更改,默认false
          android:numStars:显示多少个星星,必须为整数
          android:rating:默认评分值,必须为浮点数
          android:stepSize: 评分每次增加的值,必须为浮点数 

          setNumStars()   设置最多显示星星的个数。等同于xml中的android:max=""
          setRating()         设置要显示的星星的个数。等同于xml中的android:rating=""

    以前的是程序员的老板,现在是末路出家的程序员小白。
  • 相关阅读:
    Opencv 中透视变换函数对IplImage图像变换时出现的问题?
    algorithm ch15 FastWay
    LeetCode 151 reverse word in a string
    LeetCode 10 Regular Expression Match
    LeetCode the longest palindrome substring
    MS笔试中的一个关于函数返回的“小”题
    js数组
    js数据强转
    css居中问题
    html table
  • 原文地址:https://www.cnblogs.com/xiaoyao-blog/p/13534645.html
Copyright © 2011-2022 走看看