我为Android创建了一个测验应用程序,并且我使用Firebase存储我的数据。当应用程序启动时,所有问题都加载到onCreate()方法中,但问题是我的应用程序在加载之前启动了完成并崩溃。我想要做的是设置加载屏幕,问题不会在加载完成之前开始。非常感谢任何帮助。
感谢。
答案 0 :(得分:0)
当您从firebase加载大量数据时,最好在单独的线程中获取它并在完全获取之后更新您的主要活动。 为此,您可以使用ASYNC TASK。
class fetchdata extends AsyncTask
{
@Override
protected void onPreExecute() {
// Runs on the UI thread before doInBackground()
}
@Override
protected Object doInBackground(Object... params) {
// Fetch data here
Log.d(TAG, "MyAsyncTask@doInBackground from another thread");
return new Object();
}
@Override
protected void onPostExecute(Result result) {
// Runs on the UI thread after doInBackground()
//update main activity here
}
}
创建异步任务类后,必须通过以下方式在主类中调用它:
fetchdata obj = new fetchdata();
obj.execute();//this will execute async task seperatly.
您还可以使用进度对话框来获取异步任务中的数据。