安卓启动引导页,很有个性的安卓启动页 可以判断是不是第一次启动

现在的软件基本都会做启动引导页,主要帮助客户快速了解软件的特点。所以这个技能是必备技能。
源码:http://download.csdn.net/detail/beibaokongming/9668879

这是一个开源的控件,使用很简单,看demo很快就可以上手了。

他是通过viewpager+fragment的形式实现的,但是效果很酷炫。
要想添加页面或者减少页面只需要创建或者删除fragment即可。

里面还有skip跳过按钮和进入按钮,点击之后要进行什么操作,也只需要重写他的方法即可。

下载完Demo之后,将里面的对应的工程复制到你的工程中
安卓启动引导页
这里写图片描述
按照图中的步骤,
第一步:把这个项目复制到自己的项目中,记得复制对应的布局文件和图片文件过去。
第二步:创建一个activity然后继承相应的类。他有两个样式,继承哪个类对应显示的就是哪个样式,分别是AppIntro和AppIntro2。继承之后重写他的方法,他有三个方法:
1.init()方法是用来管理页面的,需要几个页面就在这添加几个fragment页面。
2.onSkipPressed()方法,点击跳过按钮的时候,执行这个方法。
3.onDonePressed()方法,到最后一个页面点击进入按钮后执行的方法。

/**
 * 启动页activity,在里面加载fragment
 * 继承自appintro2
 * 这里有两种样式可以选择,继承哪个类就是那种样式AppIntro和AppIntro2
 * @author beibaokongming
 *
 */
public class MainActivity extends AppIntro2 {

    @Override
    public void init(Bundle savedInstanceState) {
        //添加页面
        addSlide(new FirstSlide(), getApplicationContext());
        addSlide(new SecondSlide(), getApplicationContext());
        addSlide(new ThirdSlide(), getApplicationContext());
        addSlide(new FourthSlide(), getApplicationContext());

    }

//   @Override
//   public void onSkipPressed() {
//   // TODO Auto-generated method stub
//  
//   }

    @Override
    public void onDonePressed() {
        // 点击进入按钮后,跳转到需要的页面
        Intent intent = new Intent(getApplicationContext(), HomeActivity.class);
        startActivity(intent);

    }

}

好了,启动引导页就这么简单的做好了。但是正常情况下我们还需要一个功能,那就是如果软件第一安装的时候显示启动引导页,而之后就不再显示。这个怎样实现呢?

很简单,只需要一个标记,利用SharedPreferences来保存一个是否第一次启动的状态即可。
这里给一个思路,没有在Demo里面写。

1.声明
private SharedPreferences sp;//用来存储状态
private boolean isFirstIn = false;//用来标记是否是第一次启动,默认是false不是第一次启动

2.在软件的第一个启动页面写一个判断方法,如果是第一次启动则跳转到启动引导页面,如果不是第一次就跳转到软件主页面。

// 获取sharedPrefernces对象判断,是不是第一次启动软件
            SharedPreferences preferences = getSharedPreferences("first_pref",
MODE_PRIVATE);
            isFirstIn = preferences.getBoolean("isFirstIn", true);
            // 如果是第一次启动,则跳转到引导页面,否则继续往下执行
            if (isFirstIn) {
                // start guideactivity
                Intent intent = new Intent(WelcomeActivity.this,
                        IntroActivity.class);
                startActivity(intent);
                finish();
            } else {
//做对应的操作,比如登录

                }

第一次启动之后将isFirstIn改成false即可,下次启动的时候就不再启动引导页

// 结束引导页面前,将状态改为false,下次启动的时候,判断不是第一次启动,就跳过引导页面
        SharedPreferences preferences = getSharedPreferences("first_pref",
                MODE_PRIVATE);
        Editor editor = preferences.edit();
        editor.putBoolean("isFirstIn", false);
        editor.commit();

大功告成!!!恭喜你又get到了一个技能!!!

  • 3
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值