无法更改自定义RatingBar的大小

时间:2016-02-05 10:35:34

标签: android xml android-layout android-studio ratingbar

我正在尝试为我的Android应用程序制作自定义RatingBar,我可以在其中更改RatingBar的默认大小和颜色。为此,我为 CustomRatingBar 编写了样式:

product_form = ProductForm(request.POST, db_to_use=request.session['database'])

但是大小没有改变而是缩小了评级栏,如下所示: enter image description here

可绘制文件包括:custom_ratingbar.xmlcustom_ratingbar_emptycustom_ratingbar_filled

在我的xml中, RatingBar 如下所示:

<style name="CustomRatingBar" parent="@android:style/Widget.RatingBar">
    <item name="android:progressDrawable">@drawable/custom_ratingbar</item>
    <item name="android:minHeight">25dp</item>
    <item name="android:maxHeight">25dp</item>
</style>

如何在不收缩的情况下更改评级栏的星号?

4 个答案:

答案 0 :(得分:3)

试试这个,

自定义评级栏样式使用android的ratingBar小样式。

<?xml version="1.0" encoding="utf-8"?>
<resources>
  <style name="CustomRatingBar" parent="@android:style/Widget.RatingBar" >
 <item name="android:numStars">5</item>
 <item name="android:rating">4.5</item>
 <item name="android:stepSize">0.5</item>
 <item name="android:layout_width">wrap_content</item>
 <item name="android:layout_height">wrap_content</item>
 <item name="android:paddingBottom">44dip</item>
 <item name="android:layout_marginLeft">4dip</item>
 <item name="android:layout_marginTop">4dip</item>

    

检查example.是否相同。

其他解决方案是:

Android不会扩展评级栏图标。当你减少minHeight和maxHeight时,android将始终裁剪图片上显示的图标。似乎唯一的解决方案是为具有所需尺寸的星星提供自己的图标,并将minHeight和maxHeight设置为图标的大小。

答案 1 :(得分:3)

只需将以下几行添加到xml布局中的ratingBar中

    android:scaleX="0.5"
    android:scaleY="0.5"

答案 2 :(得分:1)

我遇到了同样的问题,尽管这个问题很老,但我希望这会对遇到这种情况的人有所帮助。

要增加评分栏中的星星大小,我们需要使用android:scaleX和android:scaleY。

请参考以下示例:

<RatingBar
android:id="@+id/ratingBar"
android:numStars="5"
android:rating="4"
android:isIndicator="true"
android:scaleX=".5"
android:scaleY=".5"
android:transformPivotX="0dp"
android:transformPivotY="0dp"
android:layout_marginBottom="-26dp"
android:layout_marginRight="-100dp"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:theme="@style/FoursquareReviewRating"/>

此外,您可以在https://en.proft.me/2017/06/18/decorating-ratingbar-android/

中找到更多详细信息

答案 3 :(得分:0)

<..
 android:scaleX=".6"
 android:scaleY=".6"
 //to avoid the unnecessary space
 android:transformPivotX="0dp"
 ../>