use*_*146 5 android splash-screen android-activity
我有一个Android应用程序,我扩展了基础Application类,以便设置一些全局变量.
public class MyApplication extends Application {
private ArrayList<ModelClass> master_list; // global variable 1
private DataBaseHelper db_helper; // global variable 2
@Override
public void onCreate() {
super.onCreate();
//do database work that will take about 5 seconds
}
}
Run Code Online (Sandbox Code Playgroud)
我想在Application类工作时(即在创建主活动之前)向用户显示启动画面.有没有办法做到这一点?
您可以将SplashActivity作为开始活动.
当MyApplication完成它的工作后,您可以开始主要活动并处理启动画面.
但是不要在onCreate中执行繁重的数据库工作,创建另一个函数并在那里执行,否则您的启动活动将不会显示.
public class SplashActivity extends Activity
@override
protected void onResume() {
//Create a thread
new Thread(new Runnable() {
public void run() {
//Do heavy work in background
((MyApplication)getApplication()).loadFromDb();
startActivity(new Intent(SplashActivity.this, MainActivity.class));
finish(); //End this activity
}
}).start();
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3803 次 |
| 最近记录: |