我已经为我的Android应用程序创建了一个启动画面,它计算五秒然后调用我的主要活动,实际问题是如果用户按下导航栏中的后退按钮,应用程序将返回到飞溅,并将卡在那,并将再次工作,如果完全关闭它再次打开。 如何在进入主要活动后销毁启动画面,或者防止用户返回? 另外,在启动画面期间是否忽略了用户点击?
答案 0 :(得分:1)
无需阻止对您的spash活动的访问。在进入主要活动之前,只需finish。
延迟和完成启动活动的完整代码可能是:
@Override
protected void onResume() {
super.onResume();
new Handler().postDelayed(new Runnable() {
@Override
public void run() {
// finish the splash activity so it can't be returned to
SplashActivity.this.finish();
// create an Intent that will start the second activity
Intent mainIntent = new Intent(SplashActivity.this, MainActivity.class);
SplashActivity.this.startActivity(mainIntent);
}
}, 5000); // 5000 milliseconds
}
完成启动活动的另一种方法是在清单文件中定义您的活动,并将android:noHistory
属性设置为true
:
<activity android:name=".SplashScreen" android:noHistory="true" ... />
至于禁用活动中的触摸事件,this问题可以提供帮助。