问题标签 [ratingbar]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android - 自定义评分栏?
我有一个布局。我在其中嵌入了一个自定义评分栏:
它是ratebar_theme
:
star_empty_show
和都是项目文件夹star_filled_show
中的文件。以上代码都没有错误,但在选项卡中我看到了这个:.png
drawable
Graphical layout
在Error Log
我看到这个:
但是我已经drawable
为每个项目添加了属性。你知道为什么会发生这个错误吗?
android - 每次我想通过单击评级栏滚动列表视图时,这是一个评级执行
我与这个问题斗争了很长时间,却没有在任何地方找到解决方案。我有一个包含一些 RatingBars 的 ListView。每次我想滚动并意外点击评级栏时,都会执行评级而不是滚动。现在我找到了一个简单的解决方案:我编写了自己的 RatingBar:
会发生什么:如果您单击 RatingBar,则会出现 3 个不同的 MotionEvents:
-Action_DOWN:放下手指
-Action_MOVE:移动手指
-Action_UP:抬起手指
您不想将评级设置为“向下”或“移动”操作。所以只要返回 true 就表示它已经发生了。如果出现“up”,则程序本身会有所不同,它是滚动还是评级,这取决于您所做的。
就这样!我希望有人帮助。
编辑:我意识到这是 Android 2.3.7 及更低版本的问题。
dynamic - 将 RatingBar 动态添加到 ListFragment
我有一个 ListFragment,它只包含我想要动态填充的 ListView。问题是我想用 RatingBar 视图填充它。我所做的是声明一个 RatingBar,然后将其添加到视图中。
我得到了错误:
如何在 ListFragment 内的每个 ListView 行中添加 RatingBar?
编辑:好的,所以我将代码更改为:
但是,虽然我没有收到错误,但我得到了这些结果:
android - 使用从 Web 加载的图像构建 RatingBar
我有一个表单,它是根据从 Web 服务接收到的数据动态生成的。此 Web 服务提供创建输入元素时需要使用的图像。我很难设置progressDrawable
. RatingBar
虽然 XML 我可以使用以下内容应用自定义图像progressDrawable
:
wherecustom_star
是一个简单的 .png 图像,并带有@android:style/Widget.RatingBar
RatingBar 样式。这工作正常:
但我想custom_star
动态改变。
在代码中,我尝试直接使用位图设置进度可绘制:
并且还通过构造一个layer-list
:
都不适合我;两者都导致custom_star
drawable出现一次,被以下尺寸拉伸RatingBar
:
有任何想法吗?
更新:
Luksprog 在下面的回答有所改进,但我仍然遇到一些问题。现在,星形可绘制对象没有被拉伸,并且可以通过触摸设置值,但在选择 3/5 时显示如下:
并选择了 5/5:
我相信图像的缩放可以通过一些调整来修复,但令人讨厌的是,secondaryProgress
drawable 似乎没有设置 - 用于灰色未选择星星的 drawable。没有它,它不是很有用。
android - 有人可以解释一下 Android 限定符是如何工作的吗?
我真的对 android 限定符感到困惑。
我想为RatingBar
. 所以我创建了rating_bar.xml
文件并将其放入drawable
文件夹。这是来源:
我只有 xhdpi 显示器的星形设计。我认为如果我将 star_on 和 star_off 图像放入 drawable-xhdpi 文件夹,那么所有不同的密度(mdpi 和 hdpi)都会自动调整大小。是的,它调整了大小,但我得到了一些用于 hdpi 和 mdpi 的工件。与此处相同:Android custom RatingBar image artifacts 我尝试了那里描述的解决方案,但没有任何帮助。在 xhdpi 设备上我没有人工制品,但在 mdpi 和 hdpi 设备上却有人工制品。
然后我决定把 star_on 和 star_off 图像放到 drawable-nodpi 文件夹中。所以我得到了很好的结果,xhdpi 和 hdpi 屏幕没有任何伪影,但是 mdpi 屏幕图像太大了。
然后我决定将 star_on 和 star_off 图像复制到 drawable-mdpi 文件夹并减小图像大小。它也没有帮助。
然后我把大星图放到 xhdpi 和 hdpi 文件夹,小星图放到 mdpi 文件夹。我认为如果我在 mdpi 设备上运行我的应用程序,来自 drawable-mdpi 的图像将被选中。但似乎 Android 从 hdpi 或 xhdpi 文件夹中选择图像并为 mdpi 屏幕自动缩放它们,因为我再次有工件。我还尝试将小图像放入可绘制文件夹。它也没有帮助。
那么Android如何选择资源呢?我想如果我有资源шт drawable、drawable-mdpi、drawable-hdpi 和drawable-xhdpi,那么Android 会尝试在与设备密度相同的文件夹中查找资源。如果没有这样的资源而不是从可绘制文件夹中获取。
android - 评分栏没有占用所有可用空间
我有一个 ratingbar 的列表视图,用户需要在 1 到 7 的范围内对不同的项目(图像)进行评分。我使用了带有 imageview 和 ratingbar 的线性布局作为我的列表视图的布局。然而,由于某些未知原因,评级栏没有占用完整的可用空间,我的最后一颗星显示不完整。
我的布局文件如下
我在我的代码中设置了 numStars 。如果我将 numstars 增加到 8,同样的事情会发生,7 颗星显示为完整,最后一颗星显示为不完整。
java - 无法为 RatingBar 设置评级
我正在尝试创建一个RatingBar
,但它似乎不起作用。似乎有两个问题。首先,当我不尝试在 Java 中对它做任何事情时,例如setRating()
出现评级星,但出现超过 20 颗星,有 5 组。另一方面,当我尝试调用setRating()
它时,它会以NullPointerException
. 如果这有什么不同,我会在弹出窗口中显示评级和其他信息。
这是xml。注意difficultPopup和terrainPopup:
这是Java:
这是错误日志:
更新
看来terrainRatingBar.getRating() 也会引发相同的错误。
更新 2 Cristian 修复了 NPE,但布局问题仍然存在:
android - 无法更改 RatingBar 的宽度和星数
我试图设置一个RatingBar
只有 5 颗星,但它会扩展以填充屏幕的宽度。
我发现了类似的问题:
但是,大多数时候解决方案是将宽度设置为,wrap_content
但对我来说宽度一直是wrap_content
.
这是我的布局。如果您向右滚动到底部,您将看到两个RatingBar
s:
这是它的样子:
android - 使用 RatingBar 显示进度
我得到了这个跟踪器屏幕,它可以跟踪用户的锻炼天数和完成的锻炼集。我想通过增加我的计数器来添加ProgressBar
或RatingBar
显示某种进度/评级。
假设ProgressBar
当 counter2 达到 300(counter2(锻炼组已完成))时,将获得 5 星或满星。
我当前的代码:
}
java - 无法从警报对话框中的 RatingBar 获取值
我有一个显示评分栏的警报对话框。
当我触发 onclick 监听器时,它显示 NULL POINTER EXCEPTION。第二行错误表示 getNumStars() 行中的错误。之后强制关闭。
我可以知道任何其他方法来获得评级栏的价值吗?我见过很少有人喜欢 ratingBar.getRating(); ratingBar.getNumStars();
他们都无法工作......即使我将值直接放入int。
编辑(解决)::
我将评级栏替换为 v 并且它有效!不知道是什么原因>.<