现在,尺寸减小但星数和..._android 修改widget.appcompat.ratingbar.small">
当前位置:   article > 正文

android ratingbar 高度,android - 如何减小Ratingbar的大小?

android 修改widget.appcompat.ratingbar.small

android - 如何减小Ratingbar的大小?

在我的活动中,我有一些评级栏。 但这个酒吧的大小是如此之大!我怎样才能让它变小?

编辑

感谢Gabriel Negut,我用以下样式做到了:

style = "?android:attr/ratingBarStyleSmall"

android:numStars = "5"

android:rating = "4" />

现在,尺寸减小但星数和等级不生效!为什么? 我有7颗星,其中6颗被选中。

Hesam asked 2019-07-14T07:28:15Z

13个解决方案

120 votes

我发布的原始链接现在已经破了(有一个很好的理由,为什么发布链接不是最好的方法)。 您必须使用ratingBarStyleSmall或继承自Widget.Material.RatingBar.Small的自定义样式(假设您在应用程序中使用Material Design)设置样式RatingBar。

选项1:

android:id="@+id/ratingBar"

style="?android:attr/ratingBarStyleSmall"

... />

选项2:

// styles.xml

... // Additional customizations

// layout.xml

android:id="@+id/ratingBar"

style="@style/customRatingBar"

... />

Gabriel Negut answered 2019-07-14T07:28:41Z

60 votes

如果要以小尺寸显示评级栏,则只需将此代码复制并粘贴到项目中即可。

android:id="@+id/MyRating"

style="?android:attr/ratingBarStyleSmall"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:layout_below="@id/getRating"

android:isIndicator="true"

android:numStars="5"

android:stepSize="0.1" />

Pir Fahim Shah answered 2019-07-14T07:29:11Z

58 votes

这是我的解决方案,经过大量努力降低小尺寸的评级栏,甚至没有丑陋的填充

android:id="@+id/listitemrating"

style="@android:attr/ratingBarStyleSmall"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:scaleX=".5"

android:scaleY=".5"

android:transformPivotX="0dp"

android:transformPivotY="0dp"

android:isIndicator="true"

android:max="5" />

Sridhar Kulkarni answered 2019-07-14T07:29:38Z

37 votes

您可以在RatingBar的XML代码中设置它,使用scaleX和scaleY进行相应调整。 “1.0”将是正常大小,“。0”中的任何内容都会减少它,大于“1.0”的任何内容都会增加它。

android:id="@+id/ratingBar1"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:scaleX="0.5"

android:scaleY="0.5" />

ZeWolfe15 answered 2019-07-14T07:30:14Z

29 votes

下面的片段为我调整了ratingBar的大小

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:id="@+id/ratingBar"

style="?android:attr/ratingBarStyleIndicator"

android:scaleX=".5"

android:rating="3.5"

android:scaleY=".5"

android:transformPivotX="0dp"

android:transformPivotY="0dp"

android:max="5"/>

a58f2dfa55968ee24277a96a313d0b3d.png

Naveed Ahmad answered 2019-07-14T07:30:40Z

8 votes

工作实例

style="@style/RatingBar"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:numStars="5"

android:rating="3.5"

android:stepSize="0.5" />

并将其添加到样式xml文件中

@color/primary_light

@color/primary_dark

这样您就不需要自定义ratingBar。

Hammad Tariq answered 2019-07-14T07:31:21Z

6 votes

style="?android:attr/ratingBarStyleIndicator"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

/>

nafees4343 answered 2019-07-14T07:31:41Z

5 votes

在这里查看我的答案。 实现它的最佳方式。

15dp

15dp

@color/white

@color/home_add

并使用像

style="?android:attr/ratingBarStyleIndicator"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:isIndicator="false"

android:max="5"

android:rating="3"

android:scaleX=".8"

android:scaleY=".8"

android:theme="@style/MyRatingBar" />

AMAN SINGH answered 2019-07-14T07:32:15Z

3 votes

如果您在Linearlayout中使用带有weightSum的评级栏。 请确保您不应为评级栏指定layout_weight。 相反,该位置评级栏内部相对布局并赋予相对布局权重。 制作评级栏宽度包装内容。

android:layout_width="0dp"

android:layout_weight="30"

android:layout_gravity="center"

android:layout_height="wrap_content">

android:id="@+id/userRating"

style="@style/Widget.AppCompat.RatingBar.Small"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:layout_gravity="center"

android:stepSize="1" />

Varnith Kumar M answered 2019-07-14T07:32:43Z

2 votes

如果您只需要默认样式,请确保您具有以下宽度/高度,否则numStars可能会混乱:

android:layout_width="wrap_content"

android:layout_height="wrap_content"

Sean answered 2019-07-14T07:33:11Z

2 votes

使用Widget.AppCompat.RatingBar,您可以使用2种样式; Indicator和Small分别适用于大小尺寸。 见下面的例子。

android:id="@+id/rating_star_value"

style="@style/Widget.AppCompat.RatingBar.Small"

... />

Ugokoli answered 2019-07-14T07:33:41Z

2 votes

在RatingBar给出属性:

style="?android:attr/ratingBarStyleIndicator"

rajlaxmi_jagdale answered 2019-07-14T07:34:09Z

0 votes

对于那些以编程方式创建评级栏并希望设置小评级栏而不是默认大评级栏的人

RatingBar ratingBar = new RatingBar(getContext(),null,android.R.attr.ratingBarStyleSmall);        ratingBar.setEnabled(假);         ratingBar.setStepSize(Float.parseFloat(“0.5”)); //用于启用半星        ratingBar.setNumStars(5);        ratingBar.setRating(值);        linearLayoutRating.addView(的RatingBar);         return linearLayoutRating;    }

Sachin Tanpure answered 2019-07-14T07:34:45Z

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小蓝xlanll/article/detail/97806
推荐阅读
相关标签
  

闽ICP备14008679号