我创建了一个收件箱活动,并且镜像了Android自带的默认邮件应用程序的某些功能。设置列表项背景颜色丢失突出显示
在Mail中,未读取的消息的背景颜色比列表中其余项的颜色浅。我通过在我的Adapter的getView方法中设置调用setBackgroundResource来镜像。 setBackgroundColor不做任何事情。
if (!msgSum.getIsRead()) {
LinearLayout l = (LinearLayout) v.findViewById(R.id.inbox_background);
if (l != null) {
l.setBackgroundResource(R.color.inbox_unread);
}
}
else {
LinearLayout l = (LinearLayout) v.findViewById(R.id.inbox_background);
if (l != null) {
l.setBackgroundResource(R.color.inbox_read);
}
}
问题是,项目然后失去突出显示的能力。我的意思是,通常如果您在使用模拟器时滚动鼠标滚轮(或者如果您的Android设备具有某种滚动功能,则使用该功能),则列表项将变为黄色,因为它们具有焦点。
如何在不失去突出显示列表项的能力的情况下完成我想要做的事情?
感谢您的帮助
我来看看。我现在在YouTube上观看您的“Google I/O 2010 - ListView世界”视频。感谢您的方向 – Andrew 2010-08-03 19:40:19
我确实认为该视频的31:43是我所需要的。那个XML文件应该在哪里? RES /选择/ myselector.xml? – Andrew 2010-08-03 20:31:19
我拥有一切正常工作。感谢您的帮助,并花时间帮助Android社区。 – Andrew 2010-08-03 21:38:59