Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/226.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android Can';t更改自定义分级栏的大小_Android_Xml_Android Layout_Android Studio_Ratingbar - Fatal编程技术网

Android Can';t更改自定义分级栏的大小

Android Can';t更改自定义分级栏的大小,android,xml,android-layout,android-studio,ratingbar,Android,Xml,Android Layout,Android Studio,Ratingbar,我正在尝试为我的android应用程序定制RatingBar,我可以在其中更改RatingBar的默认大小和颜色。为此,我为定制栏编写了如下样式: <style name="CustomRatingBar" parent="@android:style/Widget.RatingBar"> <item name="android:progressDrawable">@drawable/custom_ratingbar</item> <it

我正在尝试为我的android应用程序定制RatingBar,我可以在其中更改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>

@可拉拔/定制比例杆
25dp
25dp
但大小没有改变,而是缩小了分级栏,如下所示:

可绘制文件为:

在我的xml中,分级栏如下所示:

         <RatingBar
                    android:id="@+id/RatingBar"
                    style="@style/CustomRatingBar"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_marginTop="10dp"
                    android:isIndicator="true"
                    android:numStars="5" />

如何在不缩小评级栏的情况下更改其星形大小?

试试这个

使用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>

5.
4.5
0.5
包装内容
包装内容
44度
4dip
4dip

检查是否存在相同的问题

其他解决办法是:


Android不会缩放分级栏图标。当您降低minHeight和maxHeight时,android将始终裁剪图标,如图所示。似乎唯一的解决方案是为星星提供您自己的图标,并将最小高度和最大高度设置为图标的大小。

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

为了增加评级栏中星星的大小,我们需要使用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"/>


此外,您可以在

上找到更多详细信息,只需在xml布局中的分级栏中添加以下行即可

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


它在底部提供了一些空间,但星星的大小没有改变。我按照示例教程制作了自定义分级栏。我尝试了这个例子,效果很好,因此我提供了@pialkantiUse:
style=“?android:attr/ratingBarStyleSmall”
您使用的图标大小是多少?使用更大的图标,如48x48或50x50,并保存在xxhdpi文件夹中。
<..
 android:scaleX=".6"
 android:scaleY=".6"
 //to avoid the unnecessary space
 android:transformPivotX="0dp"
 ../>