android - 初始化数据库时如何显示启动画面?

标签 android

我创建了一个闪屏,效果很好。现在我想在显示初始屏幕时加载数据库,并在数据库完全加载后显示应用程序 UI。
我有以下代码来执行此操作,对吗?

public class Splash extends Activity{

@Override
protected void onCreate(Bundle bundle) {
    super.onCreate(bundle);
    new LoadDatabase().execute();
}

@Override
protected void onPause() {
    super.onPause();
    finish();
}

// Load DB
protected class LoadDatabase extends AsyncTask<Context, Integer, String> 
{ 
     @Override 
     protected String doInBackground( Context... params ) { 
         try {
            new DatabaseHelper(getApplicationContext()).initializeDatabase();
        } catch (IOException e) {
            e.printStackTrace();
        }
         return "";
     } 

     @Override 
     protected void onPreExecute() { 
        super.onPreExecute(); 
        setContentView(R.layout.splash);
     } 

     @Override
    protected void onPostExecute(String result) {           
        super.onPostExecute(result);
         Intent openMain = new Intent("com.nepways.MAIN"); 
         startActivity(openMain); 
    }
}


有什么好的例子或者建议吗??请帮我解决这个问题。

最佳答案

您可以通过异步或线程和处理程序执行此操作

protected class MyTask extends AsyncTask<Context, Integer, String> 
{ 
     @Override 
     protected String doInBackground( Context... params ) 
     { 
      // write ur database functionality 
     } 

     // -- gets called just before thread begins 
     @Override 
     protected void onPreExecute() 
     { 
        // u may show ur progressbar or spalsh screen
        super.onPreExecute(); 

     } 


     // -- called as soon as doInBackground method completes 
     @Override 
     protected void onPostExecute() 
     { 
       super.onPostExecute(result); 
      // Intent openMain = new Intent("com.nepways.MAIN"); 
            startActivity(openMain); 
     } 
} 

试试这个……也许对你有帮助

关于android - 初始化数据库时如何显示启动画面?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7644404/

相关文章:

java - Android Volley 抽象 onResponse

android - 正方形ImageView

android - Android Studio 3.6 更新后 BuildConfig.FLAVOR 问题

java - 如何从 Android 内存中删除文件?

android - 在 Logback 加载配置(并创建日志文件)之前请求权限

android - Retrofit2 (Android) - 如何通过 POST 方法发送表单数据

android - 如何使用 ContentValues 将 android sqlite 数据库列值更新为 null?

android - 调用 Fragment 时 Activity 被销毁

java - IllegalArgumentException : Invalid column latitude

android - YouTube 视频每 2 秒停止一次