在onResume之后加载期间触发的OnClick按钮事件

时间:2012-10-05 08:14:22

标签: android button click clickable onresume

我的一个Android应用程序遇到了一个奇怪的问题。 我会自己解释一下:

  • 我有一个SplashScreen(有点),这是一项活动。基本上,它保持1秒,在此之后调用一个处理程序。此处理程序启动我的HomeActivity,其扩展RoboActivity(Roboguice API)。

  • 在此次发布期间,我在堆栈跟踪中看到Roboguice正在初始化,我的课程也是如此。所以启动HomeActivity需要1-2秒(在SplashScreen等待1秒后)。

  • 基本上,这就是我遇到的问题。在加载1-2秒期间,SplashScreen是前面显示的,而HomeActivity仅在此2秒后出现。如果用户在这几秒钟内点击屏幕上的,则HomeActivity将触发该事件。这意味着,如果您点击SplashScreen,等待,HomeActivity将显示,您将听到咔嗒声,并且位于用户点击位置的按钮将触发。

我发现这对用户来说非常令人不安。所以,目前,我试图:

  • 通过添加

    来停用xml布局中的按钮
                android:enabled="false"
                android:clickable="false"
    
  • 通过添加onResume函数重新激活按钮:

    button.setEnabled(true);
    button.setClickable(true);
    
  • 我在堆栈跟踪中看到OnClickListener刚刚在onResume之后触发。所以此时,按钮会重新启用,因此会点击。我也尝试使用postOnResume,它也不起作用。

您是否经历过与现在相同的行为? 知道怎么解决吗?

0 个答案:

没有答案