在我的应用程序中,我有一个启动页面。一旦开始此活动,我就将内容设置到此页面。然后我正在做所有的初始更新,如DB同步。完成那些我开始下一次活动。
所以我真的应该应该开始显示启动页面,几秒后它应显示在下一页。
我得到的是当我启动应用程序时,这个空白的黑页几秒钟,然后直接显示第二个活动页面。如果我注释开始下一个活动,我可以看到黑色页面几秒钟,然后启动页面出现并保持
这是我的布局和代码
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<ImageView android:layout_width="fill_parent" android:src="@drawable/defaultimage"
android:layout_height="fill_parent"
android:scaleType="fitXY"
></ImageView>
</LinearLayout
&GT;
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Utils.setStartActivityinstance(this);
this.requestWindowFeature(Window.FEATURE_NO_TITLE);
setContentView(R.layout.firstpage);
Log.i(TAG, "display set");
Utils.imageLoader = new ImageLoader(this.getApplicationContext());
initialise();
doDataSync();
displayHome();
}
在初始化之前调用setContentView,但显示没有得到更新。
答案 0 :(得分:1)
这是因为您是同步数据库,因此您将获得一个空白屏幕,直到您的数据库同步完成启动屏幕的时间段,它将直接移至下一个活动。因此,尝试删除同步数据库代码,并尝试获得准确的输出。然后对于同步DB,您必须使用不影响UI-Thread的后台线程。 eg:- AsyncTask