当前位置:首页 > Android > 正文内容

实现应用程序只有在第一次启动时显示引导界面

jsc10年前 (2016-04-01)Android2892

第一次安装启动:启动页--->导航页-->主页面
之后启动:启动页-->主页面
实现的原理就是:

在启动页面用做一个文件保存的状态,保存程序是不是第一次启动的状态。因为只是要保存一个状态,我们将这个程序是第一次打开就将他设为true,当他进入 主页面之后将他的状态未为false,因为都进入到主页面了说明他之后肯定不是第一次启动程序,因为状态的字符也不多,所以大家都使用SharedPreferences来实现。
判断这个状态是不是第一次启动如果是就走:启动页--->导航页-->主页面这个路线。不是就走:启动页-->主页面这个路线。
下面是我在启动页面进行的操作,程序第一次启动,他的状态设为true.
               //读取SharedPreFerences中需要的数据,使用SharedPreFerences来记录程序启动的使用次数
                SharedPreferences preferences = getSharedPreferences(SHAREDPREFERENCES_NAME, MODE_PRIVATE);
                //取得相应的值,如果没有该值,说明还未写入,用true作为默认值
                isFirstIn = preferences.getBoolean("isFirstIn", true);
                //判断程序第几次启动
                if (!isFirstIn) {
                        Intent intent = new Intent(SplashActivity.this, MainActivity.class);
                SplashActivity.this.startActivity(intent);
                SplashActivity.this.finish();
                } else {
                        Intent intent = new Intent(SplashActivity.this, GuideActivity.class);
                SplashActivity.this.startActivity(intent);
                SplashActivity.this.finish();
                }


当程序进入主页面的时候,他之后启动肯定就不是第一次启动了。所以我们可以在界面,或者是调用主页面的步骤中将他的状态设为false.
                                                SharedPreferences preferences = getSharedPreferences(SHAREDPREFERENCES_NAME, Context.MODE_PRIVATE);
                                                Editor editor = preferences.edit();

                                                editor.putBoolean("isFirstIn", false);
                                                // 提交修改
                                                editor.commit();                      那么这样就可以实现了,当程序第二次进入的时候,在启动也就进行了判断。。if() else() 就执行了你想让他执行的操作。

扫描二维码推送至手机访问。

版权声明:本文由微小站发布,如需转载请注明出处。

本文链接:https://www.jsc0.com/post/42.html

标签: 引导页广告
分享给朋友:

“实现应用程序只有在第一次启动时显示引导界面” 的相关文章

Android中Parcelable接口用法

1. Parcelable接口Interface for classes whose instances can be written to and restored from a Parcel。 Classes implementing the Parcelable interface m...

Android动态布局,并动态为TextView控件设置drawableLeft、drawableRight等属性添加图标

Android动态布局,并动态为TextView控件设置drawableLeft、drawableRight等属性添加图标

注:(图中每一个条目和图标都是由代码动态生成) 代码动态布局,并需要为每一个条目设置图标,此时用到了 android:drawableLeft="@drawable/icon" ...

Android应用加入微信分享

Android应用加入微信分享

一、申请你的AppIDhttp://open.weixin.qq.com/  友情提示:推荐使用eclipse打包软件最后一步的MD5值去申请AppID二、官网下载libammsdk.jar包http://open.weixin.qq.com/download/?lang=zh_...

Android中的消息通知(NotificationManager和Notification)

下面来谈谈notification,这个notification一般用在电话,短信,邮件,闹钟铃声,在手机的状态栏上就会出现一个小图标,提 示用户处理这个通知,这时手从上方滑动状态栏就可以展开并处理这个快讯。已添加的Notification.Builder,使其更容易构建通知。 notifica...

GridView中item高度自适应

item高度自适应public class MyAdapter extends BaseAdapter {         GridView mGv;&n...