我有一个列表视图,行视图有2个子视图:图像视图和文本视图。图像视图是可操作的。两个子视图都有一个选择器。我的问题是,当我按下文本视图时,图像视图也会被选中。就像行视图将选定的状态传递给它的孩子。如何删除它以便独立选择每个子视图?
祝你好运, 的Gratzi
答案 0 :(得分:0)
使用android:listSelector="@null"
。如果这不起作用,那么在适配器中你可以覆盖2个方法来实现这个,
@Override
public boolean isEnabled(int position)
{
return false;
}
@Override
public boolean areAllItemsEnabled()
{
return false;
}
这将删除对该行进行的选择。但要突出显示单独发生,您必须编写州名表或手动管理。
答案 1 :(得分:0)
我是通过为文本视图创建一个侦听器,并从文本视图侦听器中的列表视图侦听器移动代码来实现的。这样,按下的事件将不会到达行视图,并且行不会将其委托给图像视图。我对这个解决方案并不完全满意,因为每次创建一个列表行时都必须为文本视图创建一个监听器(每次调用bindView方法时),但这是我能找到的最佳解决方案。