listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view,
int position, long id) {
Log.d("test1","run");
}
});
如果我这样设置, ListView 不会启动:
<TextView
android:id="@+id/comment"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/username"
android:layout_below="@+id/username"
android:autoLink="web"
android:textIsSelectable="true"
android:textColor="#000000"
android:textSize="14dp" />
在我删除 textIsSelectable 后,onitemclicklistener 被触发。
我研究了一段时间,我听从了网上的一些建议
例如
将 android:descendantFocusability="blocksDescendants"
放入父 View
The clicklistener is fired this time , but when select the text it show error:
TextView does not support text selection. Selection cancelled.
这两种功能都可以存在吗?非常感谢
最佳答案
您可以手动将 OnClickListener
添加到列表适配器中的父级。不要忘记删除 android:descendantFocusability="blocksDescendants"
。我刚刚试过了。
viewHolder.parent.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Toast.makeText(context, "Click", Toast.LENGTH_SHORT).show();
}
});
关于android - 当 ListView 中的 TextView 可选择时, ListView 不可单击,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34959712/