为什么要做向导页面呢?
大家作为手机用户,每天都可能安装新的App,那么每个App第一次运行一般都会给手机用户展示一下特有功能、或者是吸引用户使用的一些小亮点,这样我们第一个看到大概就是这么个页面,大家滑动它来了解这款新的App,当到达最后一页的时候,会有“开始体验”、“立即体验”等按钮等待着被用户点击,点击过后就会直接进入App的主页面了,当然第二次进入的时候就不会出现了。
上面问题的答案也就是:向导页面能吸引用户和提示用户我们所做的App一些功能。
向导页面存在于什么位置?
从流程图上看出引导页面存在的位置。首先我们需要一个欢迎界面和一个主界面。
欢迎界面用SplashActivity,主页面用MainActivity,向导页面用GuideActivity。
public class SplashActivity extends Activity {
private static final int START_NEXT = 0;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_splash);
//设置延迟是因为每个App都有广告、App的Logo或者用户登录后台处理时间
handler.sendEmptyMessageDelayed(START_NEXT, 2000);
}
private Handler handler = new Handler(new Handler.Callback() {
@Override
public boolean handleMessage(Message msg) {
handler.removeMessages(START_NEXT);
Intent intent;
boolean isStartMain = getSaveBoolean();
if (isStartMain) {
//启动主页面
intent = new Intent(SplashActivity.this, MainActivity.class);
} else {
//启动引导页面
intent = new Intent(SplashActivity.this, GuideActivity.class);
}
startActivity(intent);
finish();
return false;
}
});
/**
* 读取保存的缓存数据
*
* @return
*/
private boolean getSaveBoolean() {
SharedPreferences sp = this.getSharedPreferences("xiaoluogo", Context.MODE_PRIVATE);
return sp.getBoolean("isStartMain", false);
}
}
MainActivity的代码和布局代码以及欢迎界面的代码就不往上贴了,最下面会放上源码提供给大家。
<?xml version="1.0" encoding="utf-8"?>
<!--这里是GuideActivity的布局代码-->
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"