无法使我的 ListView 可选择,按下该元素不会突出显示

Posted

技术标签:

【中文标题】无法使我的 ListView 可选择,按下该元素不会突出显示【英文标题】:Can't make my ListView selectable, on press the element doesn't highlight 【发布时间】:2011-10-10 15:30:00 【问题描述】:

您好,我创建了一个扩展 ListActivity 类的 ListView,它工作正常,但是当我点击一个项目时,它没有突出显示。

这就是我填充列表的方式:

@Override
public View getView(int position, View convertView, ViewGroup parent) 
    View v = convertView;

    if (v == null) 
        LayoutInflater vi = (LayoutInflater)getSystemService(Context.LAYOUT_INFLATER_SERVICE);
        v = vi.inflate(R.layout.row_event, null);
    
    Event ev = items.get(position);

    if (ev != null) 
        //line one
        TextView eventName = (TextView) v.findViewById(R.id.toptext);
        //line two
        TextView eventDate = (TextView) v.findViewById(R.id.bottomtext);

        if (eventName != null) 
            eventName.setText(ev.getEventName());                            
        if (eventDate != null)
            eventDate.setText(ev.getEventDate());
        
    
return v;


谢谢!

【问题讨论】:

您是否将背景添加到列表或列表项?如果是 - 尝试删除它并检查结果。 是的,它成功了!谢谢!!!!! :D 那么解决方案是什么?我没有背景,它不起作用。 【参考方案1】:

确保将两个文本视图设置为android:focusable="false",这样它们就不会覆盖列表视图的焦点行为。此外,问题可能来自为文本视图设置背景。设置 ListView 项的背景会覆盖默认的焦点行为。

【讨论】:

是的!由于某种原因,布局有背景!我删除了它,现在可以工作了(不敢相信我在这样一个愚蠢的问题上花了这么多时间,呵呵)。谢谢!【参考方案2】:

看看这个网站:

http://udinic.wordpress.com/2011/07/01/selectablelistview-make-selection-work/

【讨论】:

以上是关于无法使我的 ListView 可选择,按下该元素不会突出显示的主要内容,如果未能解决你的问题,请参考以下文章

如何在颤动中使我的文本与 listview.builder 一起滚动

在 ListView 上生成 OnClickEvent 而不实际单击项目

按下相同的控件时按下 segue,使我的应用程序崩溃

使我的隐藏单选按钮可选项卡/508 兼容

为啥我的 ListView 使我的应用程序崩溃而不是列出我的条目?

使用适配器中的 onClick 侦听器填充单选按钮组的 ListView