Android ListView 项目背景颜色
我试图让用户选择多个项目。我想“突出显示”所选的每个列表项,以便您可以知道已选择哪些项目。
我尝试过: view.setBackgroundResource(); view.setBackgroundColor(); view.setBackgroundDrawable();
我没有取得任何成功。
感谢您的帮助!
I am trying to allow the user to select more than one item. I want to "highlight" each list item selected so you can tell which item(s) have been selected.
I have tried:view.setBackgroundResource();
view.setBackgroundColor();
view.setBackgroundDrawable();
I havent had any success.
Thannks for the help!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
您需要使用自定义数组适配器,如果您使用仅包含一个元素的列表视图,您可能可以摆脱一些实现的列表视图方法,但如果您制作自定义数组适配器,您将拥有更大的灵活性和更少的麻烦。您可以访问其中的所有元素,每个元素可以有自己的 onClickListener 和所有内容
You need to use a custom array adapter , if you are using a listview with only one element you MAY be able to get away with some implemented listview method, but you will have much more flexibility and less headache if you make a custom array adapter instead. You can access all elements in it, each element can have its own onClickListener and everything
如果将字符串数组传递给适配器,则可以像这样创建自定义适配器,并且可以更改所选项目的背景颜色,如下所示:
将适配器设置为 listview,如下所示:
这是自定义适配器类:
If you are passing a String array to the adapter,you can create custom adapter like this and can change background color of a selected item as below:
set the adapter to listview like:
and here is the custom adapter class:
您可以在适配器中覆盖 setOnTouchListener:
view.setOnTouchListener(new OnTouchListener() {
您可以在操作挂起时设置差异背景。
u can overwrite setOnTouchListener in your adapter:
view.setOnTouchListener(new OnTouchListener() {
you can set diffrence background when your action hanppend.