0

我有一个具有多个可点击视图的活动。当您单击其中一个时 - 使用新参数调用同一活动类的新实例。

Intent i = new Intent(this, SameActivity.class);
// put extras
startActivity(i);

这是在 onClick 方法中完成的。问题是,当您快速双击任何视图时,您会看到新活动已打开,然后它就像我再次单击其中一个视图(在新创建的活动中)一样。然后它再次重新导航。

日志看起来像:

onCreate()
onStart()
onResume()
onClick()
onPause()
onCreate()
onStart()
onResume()
onClick()
onCreate()
onStart()
onResume()
onStop()
onStop()

为什么以及如何避免它?

编辑: 尝试使用 setEnabled(false) 但没有效果。

更重要的是,我进一步的测试表明,onClick 实际上是由新创建的视图触发的。会不会是设备的问题?反应太慢还是这样?

4

1 回答 1

4

首先,我真的希望你有充分的理由这样做......因为Activity在我看来,在另一个之上开始同样的事情听起来毫无意义。

其次,也许您可​​以尝试调用myButton.setEnabled(false)inonPausemyButton.setEnabled(true)in onResume,同时确保在 XML 中禁用该按钮以启动。

于 2012-07-24T15:12:20.923 回答