我想在 Android 中实现一个星星作为按钮,这样当用户想要收藏他们的“当前设置”时,他们触摸星星,然后变成黄色。
你会怎么做?你能改变默认按钮吗?或者你可以只导入图片然后像 OnTouchListener 一样设置吗?
如果有人也可以告诉我如何导入图片(星号),那也将是有益的。
感谢所有的帮助。
声明一个ImageButton
以星星为背景的。然后,您可以注册一个侦听器,以了解何时按下按钮以显示或移除星星。
注意:在大多数情况下,移除星号相当于将 imagebutton 的背景设置为 null。
要导入星星,请将其放在“res/drawables”目录中,然后在 xml 或 Java 代码中引用它。
当用户单击它时,您只需更改按钮背景,您只需要有两个星形图像,一个用于选定模式,另一个用于未选定模式。
因此,当用户单击时,您可以切换选择并将所需的图像设置为背景。
我建议你检查 RatingBar 是一个明星。
http://developer.android.com/reference/android/widget/RatingBar.html
RatingBar 是 SeekBar 和 ProgressBar 的扩展,显示星级。使用默认大小的 RatingBar 时,用户可以触摸/拖动或使用箭头键来设置评分。较小的 RatingBar 样式 ( ratingBarStyleSmall) 和较大的仅指标样式 (ratingBarStyleIndicator) 不支持用户交互,只能用作指标。
使用支持用户交互的 RatingBar 时,不鼓励将小部件放置在 RatingBar 的左侧或右侧。
设置的星数(通过 setNumStars(int) 或在 XML 布局中)将在布局宽度设置为包裹内容时显示(如果设置了另一个布局宽度,结果可能无法预测)。
客户端不应修改次要进度,因为它在内部用作部分填充星的背景。
<RatingBar
android:id="@+id/ratingBar1"
android:layout_width="wrap_content"
android:layout_height="wrap_content" android:clickable="true" android:numStars="1"/>