0

我通过从 XML 膨胀它以编程方式在当前视图的顶部添加一个视图。问题是在添加并显示视图后,我仍然可以从底层视图按下按钮。我怎样才能防止这种情况?

4

2 回答 2

1

尝试为顶部的视图设置一个空的点击监听器。

例如:

myTopView.setOnClickListener(new OnClickListener() {
      @Override
      public void onClick(View view) {
          // empty, just to consume the event.
      }
});

除了消耗事件并且不让它传递给底层视图之外,它不会做任何事情。

于 2013-07-15T15:27:25.343 回答
1

您的新视图需要处理触摸事件。只需为此目的创建一个新的空触摸侦听器:

myTopView.setOnTouchListener(new View.OnTouchListener() {
    @Override
    public boolean onTouch(View v, MotionEvent event) {
        return true;//true to specify that the event was consumed by the top view
    }
});
于 2013-07-15T15:28:32.403 回答