标签:android android-activity splash-screen
我有一个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
}
}
我想在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();
}
}
标签:android,android-activity,splash-screen 来源: https://codeday.me/bug/20190610/1212592.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。