首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ListView on Fragment

ListView on Fragment
EN

Stack Overflow用户
提问于 2011-06-22 23:03:50
回答 2查看 1.6K关注 0票数 3

如何通过按ListView (onListItemClick)标记选定的行(保持按下的颜色,默认为黄色)?

我使用的不是HoneyComb,我使用的是android-support-v4.jar,一个Android兼容性jar。

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

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

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

谢谢。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-06-24 19:58:00

我在list的适配器类中实现了这一点。我在列表中有两种类型的行:一种是普通的、未选中的行,另一种是选中的行。当用户选择一个列表项时,通知适配器将该项设置为“selected”,并调用.notifyDatasetChanged()。在适配器的.getView()中,检查当前项是否被选中,并膨胀该行的相应布局。

它可能看起来更复杂,但它确实有效。这样,您就可以随时向适配器请求所选的元素,而无需在activity中修改实例变量来存储此信息。我觉得这样会更干净一些。

票数 2
EN

Stack Overflow用户

发布于 2011-06-24 19:49:13

使用以下代码

代码语言:javascript
复制
list.setOnItemClickListener(new OnItemClickListener() {
    public void onItemClick(AdapterView<?> arg0, View view, int position, long id) {
        view.setBackgroundColor(Color.WHITE);
    }
});
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6442071

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档