实现引导页面的加载和退出。


实现思路:
1.n个引导的“欢迎页面”用WelcomeActivity中的ViewPager来承载。
2.在引导页面后必须还要具备主界面Activity。
3.WelcomeActivity中要读写SharedPreferences -- 记录App是否第 1 次使用?
4.只要app运行过后,没有下载,那么保存在SharedPreferences中的数据就不会丢失,
5.“连续摁2次回退”结束(“app回到后台”),界面上加载手机的Home界面,实现方法?

1.用viewpager来加载页面

a.准备页面图片
b.在布局文件中部署ViewPager  注意:一定要引用v4包中的ViewPager
c.在activity中绑定数据源,展示ViewPager上的页面:
    1.查找到控件,并且准备View
    2.设置适配器
    3.将适配器绑定到ViewPager上,即可显示界面
    4.在适配器中:重写 4个方法: getCount()、isViewFromObject()、destoryItem()、
    insatntiateItem(){
        ImageView iv = new ImageView(context);  //此处的context可以通过构造方法传过来的
        int[] imgs = ((WelcomeActivity)context).getImgs();    //在Welcome中要提供getImgs()方法来获取资源数组
        iv.setImageResource(imgs[position]);    //将当前页面的View加载到当前的ViewPager上
        container.addView(iv);
        return iv;
        }

2.在引导页面后必须还要具备主界面Activity。

1.准备xml文件中的资源
2.加载主界面的时候是在已经加载完成来引导页面之后,所以这个时候就需要判断,是否已经引导完成。
   在Adapter中自定义一个点击事件的监听器,利用回调的思想在WelcomeActivity中来判断是否已经加载到最后一页:
    a.如果已经加载到最后一页,并且在SharedPreferences中记录,
//只有点击最后 1 页的时候,才记录当前app已经使用过,下次加载就略过,直接进入主界面MainActivity
if (position == imgs.length - 1) {
//1.记录Sharedpreferences
SharedPreferences sp = getSharedPreferences("used_log", MODE_PRIVATE);
//2.开启编辑器
SharedPreferences.Editor editor = sp.edit();
editor.putBoolean("isRun", true);
//3.提交 "同步提交"
//editor.commit(); //同步提交
editor.apply(); //异步提交

//将欢迎页面销毁
finish();
}

    b.再在MainActivity中去提取SharedPreferences的数据的值,如果为true,就加载主页面,为false就展示引导页面。
//如果是首次运行,则SharedPreferences的used_log文件就没有记录isRun的值,则将去默认值
if (!isRun){
   //页面跳转到到引导页面   
    startActivity(new Intent(this,WelcomeActivity.class));
}
    setContentView(R.layout.activity_main);
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值