Android 向导页面

1、说明:
开发工具:Android Studio 1.3
效果安装包和源码:见底部下载连接
很多应用程序都有向导页面,并且向导页面只是用户第一次进入的时候才显示,第二次以后都不会显示向导页面
2、实现思路
页面大致分为3个,一个欢迎页,一个向导页,一个主页
第一次进入程序,首先打开欢迎页,并实现延迟跳转(见 http://blog.csdn.net/u011183394/article/details/46761651)
并记录该次为第一次进入通过SharedPreferences实现,跳转至向导页,向导页使用了ViewPage,并且滑动到最后一个页卡时显示一个按钮,单击按钮进入主页
第二次进入,也是首先打开欢迎页,此时根据SharedPreferences判断得到为非第一次进入,则直接跳转到主页
3、代码分析
1)、记录是否第一次进入程序

/**
 * 记录用户是否是第一次进入
 * Created by yz1309 on 7/5/2015.
 */
public class SpUtils {
    private static final String Sp_Name = "welcome";
    private static final String Sp_Is_First = "isFirst";

    // 读取是否是第一次进入
    public static Boolean getSp(Context context) {
        return
                context.getSharedPreferences(Sp_Name,
                        Context.MODE_PRIVATE).getBoolean(Sp_Is_First, false);
    }

    // 写入值
    public static void putSp(Context context,Boolean isFirst){
        SharedPreferences.Editor editor = context.getSharedPreferences(
          Sp_Name,Context.MODE_APPEND

        ).edit();

        editor.putBoolean(Sp_Is_First,isFirst);
        editor.commit();
    }
}

2)、实现延迟跳转并判断跳转至哪个页面

new Timer().schedule(
                new TimerTask() {
                    @Override
                    public void run() {
                        if (!SpUtils.getSp(getApplicationContext())) {
                            startActivity(new Intent(getApplicationContext(), WelcomeGuideActivity.class));
                            SpUtils.putSp(getApplicationContext(),true);
                        }
                        else{
                            startActivity(new Intent(getApplicationContext(),MainActivity.class));
                        }
                        finish();
                    }
                }, 3000
        );

3)、向导页中只在最后一个页卡中显示跳转按钮

// 隐藏显示按钮
        viewPager.setOnPageChangeListener(new ViewPager.OnPageChangeListener() {
            @Override
            public void onPageScrolled(int i, float v, int i1) {
            }
            //页卡被选中的方法
            @Override
            public void onPageSelected(int i) {
                if(i == mList.size() -1)
                    btnSub.setVisibility(View.VISIBLE);
                else
                    btnSub.setVisibility(View.GONE);
            }
            @Override
            public void onPageScrollStateChanged(int i) {
            }
        });

效果安装包和源码下载

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值