欢迎界面主要用来增强用户体验,在软件加载的过程中,给用户一种展示,同时,不让未加载好的页面展现给用户。应该给用户动态的感觉,否则体验会很差。<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />
实现方法有两种:
1,使用Activity的跳转,SplashView为第一个Activity,解析放在此Activity,解析完成后,跳转至MainActivity,在此不赘述。
2,
使用帧布局,让splash view覆盖在main view之上。先显示splash view(在此过程中执行耗时操作),后显示main view。注意的问题是:多线程之间的切换。(刷UI只能在Main Thread)。
Splash view 可以用一个线性布局(嵌套一个ImageView和一个动态显示),Image为公司logo,动态显示可以选择ProgressBar或者Animation。
以下为截图:
![](https://i-blog.csdnimg.cn/blog_migrate/7a32629551c335255ed2163fbc369ccb.jpeg)
代码如下:
new Thread() {
public void run() {
String strJSON = getJSON();
if (strJSON != null) {
mAlbums = parseAlbumJSON(strJSON);
runOnUiThread( new Runnable() {
public void run() {
mGalleryAdapter.notifyDataSetChanged();
mSplashView.setVisibility(View.GONE);
mMainView.setVisibility(View.VISIBLE);
initGallery();
}
});
} else {
// 得不到专辑地址!
return;
}
};
}.start();
public void run() {
String strJSON = getJSON();
if (strJSON != null) {
mAlbums = parseAlbumJSON(strJSON);
runOnUiThread( new Runnable() {
public void run() {
mGalleryAdapter.notifyDataSetChanged();
mSplashView.setVisibility(View.GONE);
mMainView.setVisibility(View.VISIBLE);
initGallery();
}
});
} else {
// 得不到专辑地址!
return;
}
};
}.start();
注释图片:在此不能完整显示,可以下载后看,很清楚。
转载于:https://blog.51cto.com/mikewang/737713