【发布时间】:2015-06-05 00:22:20
【问题描述】:
我正在开发一个应用程序。在此,在应用程序开始时,一个活动将显示 2 秒钟,然后应用程序以主活动开始。 这就是我试图实现这一目标的方式:
activity_main.java 文件:
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
Intent i = new Intent(MainActivity.this,open.class);
startActivity(i);
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
android.app.ActionBar bar = getActionBar();
bar.setBackgroundDrawable(new ColorDrawable(Color.parseColor("#A6250F")));
bar.setSubtitle(R.string.title_sub);
}
}
open.java 文件
public class open extends Activity {
protected void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.open);
android.app.ActionBar bar = getActionBar();
bar.setBackgroundDrawable(new ColorDrawable(Color.parseColor("#A6250F")));
}
protected void onStart(){
super.onStart();
try {
Thread.sleep(2000);
} catch (InterruptedException e) {
e.printStackTrace();
}
finish();
}
}
open.java 文件应在应用程序开始时显示 2 秒,然后从 activity_main.java 继续执行
但是会发生一秒钟的空白屏幕,然后显示 mainactivity。需要帮助
【问题讨论】:
-
基本上你已经用
Thread.sleep(2000);阻塞了Ui线程......你应该找到更好的解决方案......提示:在“启动画面”中使用了类似的代码 -
看看here。这几乎就是您想要做的。
-
Android 的 Google 启动画面