android - 如何在android的自定义评分栏中增加星星之间的间距?
问题描述
我在 android 中设计了具有不同可绘制图像的自定义评分栏。我想增加评分栏中星星之间的间距。我知道有一个类似的标题相同的问题。他们使用第三方 SDK 来创建空间。但没有成功。请让我知道如何继续。
活动主.xml:
<?xml version="1.0" encoding="utf-8"?>
<androidx.coordinatorlayout.widget.CoordinatorLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context=".MainActivity">
<RatingBar
android:layout_width="wrap_content"
android:layout_height="@dimen/_30sdp"
style="@style/ImageRatingBar"
android:id="@+id/rate"
android:stepSize="1"
android:numStars="5"
android:layout_marginStart="@dimen/_20sdp"
android:layout_marginTop="@dimen/_20sdp"/>
</LinearLayout>
</androidx.coordinatorlayout.widget.CoordinatorLayout>
在我的styles.xml 中:
<style name="ImageRatingBar" parent="@android:style/Widget.RatingBar">
<item name="android:progressDrawable">@drawable/ratingbar_selector</item>
<item name="android:minHeight">30dp</item>
</style>
在我的drawables中,rating_bar_selector.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/grey_star" />
<item
android:id="@android:id/secondaryProgress"
android:drawable="@drawable/yellow_star" />
<item
android:id="@android:id/progress"
android:drawable="@drawable/yellow_star" />
</layer-list>
解决方案
推荐阅读
- c# - 如何更改字典的键
- c# - 从另一个对象创建具有属性子集及其值的对象
- python - 删除所有成员角色并在一段时间后将它们返回
- java - 为什么在 Java 中解析 CSV 电子表格会引发 NumberFormatException?
- java - Java 可选
- > 到地图转换
- mongodb - MongoDb Compass 将数据库引用导出为嵌入式 JSON
- css - 1440px 宽度的媒体查询,但不是笔记本电脑屏幕?
- javascript - 电子邮件和密码不会通过美国传递到 firebase
- sql - 将年数和月数转换为月数
- android - BroadcastReceiver Android 中的 locationManager.requestLocationUpdates