OnLongClick()阻止父视图上的其他单击

时间:2017-12-30 19:21:41

标签: android android-layout onclicklistener onlongclicklistener

我有一个奇怪的行为,我使用RecyclerView来显示列表。 此列表中的每个项目都包含一个包含2个TextView的LinearLayout。 (这是一个经典的配置)。 我在LinearLayout上有一个OnClickListener,在第二个TextView上有一个OnLongClickListener。

问题是OnLongClickListener阻止“普通点击”到达LinearLayout。

总结一下: 如果单击第一个TextView,则单击布局。 如果我点击第二个TextView,则没有任何反应。

2 个答案:

答案 0 :(得分:0)

使用当前的xml文件无法避免这种情况,您可能需要进行调整 虽然如果您希望使用此设计,则必须将OnClickListener添加到包含OnLongClickListener的第二个文本中,并在linearView.OnClickListener调用任何内容时调用它。

答案 1 :(得分:0)

当您单击TextView时,只需禁用线性布局的所有单击,因为一次只需单击一个侦听器即可。

linearlayout.setClickable(false);
linearlayout.setEnabled(false);