android - fragment 上的 ListView

标签 android listview android-fragments

我如何通过按下 ListView 的一行 (onListItemClick) 标记该行被选中(保持按下的颜色,默认情况下为黄色)?

我没有使用 HoneyComb,我正在使用 android-support-v4.jar 一个 Android 兼容 jar。

我想提供像 Gmail on HoneyComb (http://www.youtube.com/watch?v=5swwUeZ0-ww) 这样的方面,您知道选择了什么项目,因为它保持蓝色。

我想我想做的是一个叫做激活的新状态(在 HoneyComb 上),但是..我想用其他版本的兼容 jar 来做。

顺便说一句,我正在使用 SimpleCursorAdapter 来填充 ListFragment

谢谢。

最佳答案

我在列表的适配器类中实现了它。我在列表中有 2 种类型的行:1 种用于正常的未选择的行,另一种用于选定的行。当用户选择一个列表项时,您通知适配器将该项目设置为“选中”,并调用 .notifyDatasetChanged()。在适配器的 .getView() 中,您检查当前项目是否被选中,并为该行填充相应的布局。

它可能看起来更复杂,但确实有效。通过这种方式,您也可以随时向适配器询问所选元素,而无需在 Activity 中乱用实例变量来存储此信息。我认为这有点干净。

关于android - fragment 上的 ListView ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6442071/

相关文章:

java - 使用 Retrofit 将图像上传到 amazon s3

android - 嵌入在 html5 中的 mp4 的跨平台语法

android - 资源$NotFoundException : String resource ID #0x0 with Toast. makeText

java - ListView 未从数组填充

android - 动态创建一个包含每个月标题行的 ListView

android - 带有 ShareActionProvider 的共享按钮在操作栏上添加了两次

安卓:设置初始保存状态

java - NotifyDatasetchanged 不起作用。单击按钮后应用程序崩溃

c# - 我如何从选定的 ListView 项目中获取名称?

java - 窗口回调 onMenuOpened 和 onPanelClosed 用于随工具栏膨胀的菜单