关闭

Android APP都有的引导、欢迎界面 详解

标签: 引导页
1035人阅读 评论(0) 收藏 举报
分类:

                                    APP都有的引导、欢迎界面 详解


          1.每个App几乎都会有个引导界面以及欢迎界面。

       2.欢迎、引导界面的思路:

               

       3.首先解析第一次进入APP。

          一。如何知道用户是第一次进来

              一般我们在SharedPreferences中 保存是否是第一次进入 

              

SharedPreferences perPreferences = getSharedPreferences(ContantValues.FRISTLOGIN, MODE_PRIVATE);
		isFirstIn = perPreferences.getBoolean(ContantValues.ISfRIST, true);
		if (!isFirstIn) {
			//到主界面
		} else {
			//到引导页面
			Editor editor = perPreferences.edit();
			editor.putBoolean(ContantValues.ISfRIST, false);
			editor.commit();
		}
              

              当用户进入APP的时候,先去获取是否第一次进入APP的布尔值。 如果第一次 则为true 否则

        为false。

         一。获取到了是第一次进来之后?

                接下来第一次进去,对应的用intent 转跳到另一个Activity (引导Activity)

                在转到了引导界面之后,还要做一件非常重要的事情,那就是将是否是第一次进入APP

         的布尔值赋值为false

                 否则直接转跳到主界面。

        一。跳转了界面后做什么? 

                 首先转跳到主界面比较简单,直接略过。

                 转跳到引导页需要做的事情。

               1.用户滑动引导页面上的图片

               2.到了最后一页,需要给用户提示的按钮(比如 开始体验)

            滑动的控件 肯定是 ViewPager  

                 如果不了解怎么用,可以参考:  ViewPager详解

                  可以使用 ViewPager+FragmentAdapter  也可以像上面的那篇博客里写的继承baseAdapter

            结合使用。

         

              接下来贴个简单的代码,如果引导页比较少 也可以建议这样做:

              

               views = new ArrayList<View>();
		View fViews = inflater.inflate(R.layout.guide_adapterview, null);
		((TextView)fViews.findViewById(R.id.first_login)).setVisibility(View.GONE);
		View sViews = inflater.inflate(R.layout.guide_adapterview, null);
		((ImageView) sViews.findViewById(R.id.guide_image)).setImageResource(R.drawa                ble.splash2);
		views.add(fViews);
		views.add(sViews);
		vpAdapter = new ViewPagerAdapter(this, views);
		vp = (ViewPager) findViewById(R.id.viewpager);
		vp.setAdapter(vpAdapter);
                //开始体验按钮
		loginActivity = (TextView) views.get(1).findViewById(R.id.first_login);
                loginActivity.setOnClickListener(this);
                //滑动监听
		vp.addOnPageChangeListener(this);

                   vpAdapter = new ViewPagerAdapter(this, views);  切换容器里的view

                 而且每个引导页的布局都是用同样的。

              

                  一。引导页上的 小圆圈 索引?

              

             这个可以自己用图片imageview 来实现。但是如果 有100个引导页 要用100个imageview?

            我自己写了一个 索引变换 的自定义View 很简洁 也很容易拓展。

            

 <com.custom.view.IndexChangeView
        android:id="@+id/indexChangeView1"
        android:layout_width="fill_parent"
        android:layout_height="30dp"
        android:layout_alignParentBottom="true"
        android:layout_alignParentLeft="true"
        app:number="2" />

           注:app:number 是需要几个小圆圈。 

           最后根据viewpage的监听事件 来选择绘制哪个不同的索引 小圆圈

           这个自定义View的源代码 后面会发出来。

          

         效果图:

      

      

          

           

                    

            源代码:

              Demo

                

                

              

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:48635次
    • 积分:1244
    • 等级:
    • 排名:千里之外
    • 原创:73篇
    • 转载:19篇
    • 译文:1篇
    • 评论:14条
    最新评论