我在另一个视图之上有一个视图。底视图应该在单击时触发回调。单击该顶视图时不应触发任何回调。
我面临的问题是,在顶视图上单击时,底视图会触发其回调。我想防止这种情况。
我已经阅读了许多有关禁用点击的文章,它们都暗示着同样的事情:view.setEnabled(false);
和view.setClickable(false);
这些都不能阻止顶视图吞噬/阻止click事件。
您知道我如何可以阻止点击通过吗?
最佳答案
它有点怪异,但我想出的最好的解决方案是添加一个空的onClickListener吞下该事件。
button.setOnClickListener(new View.OnClickListener()
{
@Override
public void onClick(View v)
{
// HACK disables click through events by swallowing click
}
});