- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
我已经从 this stackoverflow thread 实现了自定义评级栏即使我将 numStars 设置为 5 或任何其他数字
,它也不会显示超过一颗星这是代码。
我正在为图像使用矢量绘图。
main_activity.xml 中的 RatingBar
<RatingBar
android:id="@+id/ratingBarValue"
style="@style/Fuel_Indicator"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:numStars="5"
android:stepSize="1.0"
android:max="5" />
Fuel_Indicator 样式中的样式。
<style name="Fuel_Indicator" parent="@android:style/Widget.RatingBar">
<item name="android:progressDrawable">@drawable/fuel_bar_full</item>
<item name="android:indeterminateDrawable">@drawable/fuel_bar_full</item>
<item name="android:minHeight">23dip</item>
<item name="android:maxHeight">25dip</item>
</style>
fuel_bar_filled.xml
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item android:id="@android:id/background"
android:drawable="@drawable/fuel_bar_empty" />
<item android:id="@android:id/secondaryProgress"
android:drawable="@drawable/fuel_bar_empty" />
<item android:id="@android:id/progress"
android:drawable="@drawable/fuel_bar_filled" />
fuel_bar_empty.xml
<selector
xmlns:android="http://schemas.android.com/apk/res/android">`
<item android:state_pressed="true"
android:state_window_focused="true"
android:drawable="@drawable/ic_fuel_empty" />
<item android:state_focused="true"
android:state_window_focused="true"
android:drawable="@drawable/ic_fuel_empty" />
<item android:state_selected="true"
android:state_window_focused="true"
android:drawable="@drawable/ic_fuel_empty" />
<item android:drawable="@drawable/ic_fuel_empty" />
</selector>
fuel_bar_filled.xml
<selector
xmlns:android="http://schemas.android.com/apk/res/android">`
<item android:state_pressed="true"
android:state_window_focused="true"
android:drawable="@drawable/ic_fuel_full" />
<item android:state_focused="true"
android:state_window_focused="true"
android:drawable="@drawable/ic_fuel_full" />
<item android:state_selected="true"
android:state_window_focused="true"
android:drawable="@drawable/ic_fuel_full" />
<item android:drawable="@drawable/ic_fuel_full" />
</selector>
最佳答案
您的实现是完美的但是您使用的 Vector Drawable
导致了这个问题。因此,要使用它,请尝试将 drawable 文件夹中的 Vector Drawable
替换为 png
图像,看看它的神奇之处。
您将 Vector Drawable
与 layer-list
一起使用,因此您的 Vector Drawable
图像适合整个布局尝试将其替换为 png
这将解决您的问题。
关于android - 自定义 RatingBar 未显示超过 1 星,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41237324/
每当我在布局中使用 RatingBar View 时,我都会突然遇到各种编译错误。我使用的是 Android 2.0,但我也尝试过 2.0.1 和 2.1,但并不愉快。我还收到一条消息:Shader
我在应用程序中有一个 RatingBar 组件,我对其进行了以下配置: android:numStars="5" android:stepSize="1.0" 问题是一旦触摸从下一个星星的部分穿过一个
我有一个 layout我想在哪里显示RatingBar为用户。我正在使用我自己的自定义图标而不是默认星星。我的问题是图标是矢量格式,当我使用它们时,我会得到奇怪的效果(见下图)。它应该显示 5 个图标
我已将 RatingBar 添加到我的 ListView 的每个项目中。它运行良好,但不显示准确评级。例如,如果评级是 4.3,它必须显示第 5 颗星的一部分,但它没有。 截图: 第一项评分 = 4.
我在 ListView 中有一个 TextView 和 RatingBar,我想在每个上保存 RatingBar 的值在 ListView 中列出,可以使用自定义适配器吗?? 我用来做的代码喜欢: P
我有一个 RatingBar,用户可以在其中提交星级。我没有按钮,我想让它对用户更友好,让它动态提交。 在 setOnRatingBarChangeListener 方法中,我提交了星星。 这里是问题
我真的是 android 编程的新手。我的问题是 RatingBar 实际上是如何工作的?我想制作一个包含 RatingBars 的应用程序,每当用户将它评为 4 星时,我希望我的应用程序的其他用户也
我正在开发一个使用 RatingBar 的 Android 应用程序,并获得 5 颗星。我有一台 HTC Wildfire,RatingBar 工作得很好。我有这个屏幕的布局。但是,我在 HTC de
我的应用程序中有一个 android 评级栏,它只显示 int 评级。 例如: float ratingValue = 1.5f; myRatingBar.setRating(ratingValue)
RatingBar 中的步长是多少?这是我在文档中找到的内容:此评级栏的步长。例如,如果需要半星粒度,则为 0.5。我试图在这里找到它:https://developer.android.com/re
我知道我可以应用我自己的风格,将评分栏的明星图片换成其他东西。我需要一些更复杂的东西:每个 ratingbar 元素都应该比以前的大。 看图: 这可能吗? 最佳答案 我们可以扩展评分栏,保持栏的高度与
背景:我们使用标准的 Android RatingBar 5 星。我们允许用户使用此 RatingBar 从 1 到 5 进行评分。我们显示的默认值为零,即未评分。 问题:用户目前即使在点击评级栏一次
我知道这听起来很烦人,但有时感觉 Android 的 UI 组件和行为有些离谱。 考虑以下 XML: 在不同尺寸的设备上显示效果的屏幕截图: Nexus S 评分栏 平板电脑评分栏 小型
我需要强制 重绘 RatingBar 控件。 在评级栏和样式出现许多问题后,我设法使几乎所有功能都正常工作。 我在 ListView 项目中使用它。由于它的工作原理,人们不得不对其外观和行为进行一些“
我有以下 RatingBar: 当我按下星星的左边部分时 - 它被选中,但当我按下右边部分时 - 下一颗星星被选中。我需要我点击的星星被选中,无论我点击它的哪个部分。请帮助我了解问题所在。 最佳答案
我在应用程序中有这个评分栏,它始终正确显示。但最近我意识到它在某些设备上无法正常工作(包括带有 Lollipop 版本的 Nexus 5)。 评级栏被黑色覆盖层覆盖,如下图所示(仅在某些设备上)。当
如何做到以下几点? 如果 RatingBar 有 1-3 颗星 - 红星。如果 RatingBar 有 4 颗星 - 黄色星星。如果 RatingBar 有 5 颗星 - 绿星。 ((RatingBa
我有一个表单,它是根据从 Web 服务接收到的数据动态生成的。此 Web 服务提供创建输入元素时需要使用的图像。我很难设置 RatingBar 的 progressDrawable。虽然 XML 我能
我在每行中使用 RecyclerView 和 RatingBar。现在,有时部分 RatingBar 绘制不正确。离开屏幕并返回后,一切恢复正常。我不知道为什么会这样,我什至从 RatingBar 中
我正在尝试在 ListView 中显示评级栏。 无论我尝试了什么: viewHolder.viewOnlyQuickRatingBar.setNumStars(5); 或: android:n
我是一名优秀的程序员,十分优秀!