Android引导页的实现

实现原理:使用ViewPager控件(com.android.support:support-v4:22.1.1),把引导页的layout文件放进ViewPager控件就可以了。

ViewPager控件本质上也是个列表控件,横向滚动,一个页面一个页面的滚动,底下并没有滚动条,所以非常适合做引导页,和页签的tap控件来做横向滚动的页面也非常常用。

首先引用 com.android.support:support-v4:22.1.1

引导页面的layout

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent"
    android:layout_height="match_parent" android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    android:paddingBottom="@dimen/activity_vertical_margin"
    tools:context="demo.viewpagerdemo.GuideActivity">

    <android.support.v4.view.ViewPager
        android:id="@+id/guide_activity_viewpager"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent" >
    </android.support.v4.view.ViewPager>

</RelativeLayout>
package demo.viewpagerdemo;

import android.app.Activity;
import android.support.v4.view.ViewPager;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;

import java.util.ArrayList;
import java.util.List;

public class GuideActivity extends Activity {

    private View mPage1, mPage2, mPage3;

    private List<View> mViews = new ArrayList<View>();
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_guide);

        ViewPager vp=(ViewPager)findViewById(R.id.guide_activity_viewpager);

        mPage1 = LayoutInflater.from(this).inflate(
                R.layout.guide_page1, null);
        mPage2 = LayoutInflater.from(this).inflate(
                R.layout.guide_page2, null);
        mPage3 = LayoutInflater.from(this).inflate(
                R.layout.guide_page3, null);
        mViews.add(mPage1);
        mViews.add(mPage2);
        mViews.add(mPage3);
        vp.setAdapter(new BasePagerAdapter(this, mViews));

    }

}

注意ViewPager需要使用PagerAdapter适配器,所以需要继承PagerAdapter类来实现一个适配器

public class BasePagerAdapter extends PagerAdapter {

    private Context mContext;
    private List<? extends View> mViews;

    public BasePagerAdapter(Context mContext, List<? extends View> mViews) {
        this.mContext = mContext;
        this.mViews = mViews;
    }

    @Override
    public int getCount() {
        return mViews.size();
    }

    @Override
    public boolean isViewFromObject(View view, Object object) {
        return view == object;
    }

    @Override
    public Object instantiateItem(ViewGroup container, int position) {
        container.addView(mViews.get(position));
        return mViews.get(position);
    }

    @Override
    public void destroyItem(ViewGroup container, int position, Object object) {
        container.removeView(mViews.get(position));
    }
}
时间: 2024-10-15 04:50:35

Android引导页的实现的相关文章

Android引导页设计

大家在安装好一个应用后,第一次打开时往往会出现一个使用引导页,形式一般为三.四张图片,随着我们的滑动进行切换,在最后一页会有一个进入应用的按钮,我们通过点击这个按钮可以进入应用,其实这其中没有太多的复杂的地方,切换的完成就是一个ViewPager,说了这么多,下面开始为大家解读代码: 开始我们的设计之前我们需要做一些准备工作,首先我们新建一个工程,然后选择工程通过右键单击properties,然后选择Java Build Path,点击右侧Libraries,再点击Add jar,将我们工程li

Android 引导页公共方法LeaderPager

SimpAndroidFarme是近期脑子突然发热想做的android快速开发的框架,目标是模块化 常用的控件,方便新手学习和使用.也欢迎老鸟来一起充实项目:项目地址 引导页是我们开发app很常用的功能,但是一般都是第一此运行才会执行,每写个项目 都要为这种一次性的东西写那么多重复代码太讨厌啦- 现在再也不用担心这个问题了! 一般引导有两种图片源 , 本地图片/ 网络图片 目标使用方法: 使用本地提供的图片 id 参数一: viewpager 参数二: 图片url集合(使用本地则传null) 参

Android引导页Splash设计

Android_Splash引导页就是在应用第一次安装时用来介绍应用的部分功能的动画页面,让用户大致的了解这个应用有啥功能.当用户首次安装时会有引导页面,用户下次启动的时候,就会直接进入主页面. SpUtils.java package com.zwb.splashdemo.utils; import android.content.Context; import android.content.SharedPreferences; /** * 类描述:SharedPreferences工具类

Xamarin.Android 引导页

http://blog.csdn.net/qq1326702940/article/details/78665588 https://www.cnblogs.com/catcher1994/p/5554456.html 第一次安装的APP,一般都会浏览几张引导图片,才进入APP 1.界面布局 [html] view plain copy <?xml version="1.0" encoding="utf-8"?> <RelativeLayout x

推荐4个Android引导页控件

Guideshow 快速实现引导页, 2015-08-03 更新 CircleIndicator 一个轻量级的viewpager指示器 ,类似于nexus5 启动器的效果 2015-08-02 更新 XhsWelcomeAnim 小红书欢迎引导第二版 2015-07-10 更新 AppIntro 非常简洁.漂亮的引导页控件,使用简单 2015-07-07 更新 http://www.see-source.com/androidwidget/list.html

Android 引导页的代码

布局代码 <android.support.v4.view.ViewPager android:id="@+id/viewpage" android:layout_width="match_parent" android:layout_height="match_parent" /> <!--android:background="@drawable/btnselector"--> <Button

Android 1分钟教你打造酷炫的引导页(实现ViewPager淡入淡出切换)

纯手工自制的Android引导页,实现了Viewpager切换的淡入淡出(页面不移动!)切换以及文字动画. 下面是效果演示: 实现思路+心路历程...: 其实别的都还蛮简单的,就是这个ViewPager的淡入淡出切换动画比较棘手,以前都没有做过,然后去网上找了好久好久. 其中碰到各种坑无数,大概90%的人是引的 JazzyViewPager的包然后就balabala说自己实现了种种功能,真是醉了.... 结论是国内根本找不到这个效果的实现嘛.... 然后 在Github下了JazzyViewPa

Android 高级UI设计笔记22:Android 指示引导页(带圆点)

1. 引导页: 我们在安装某个软件首次运行时,大部分都会有一个引导页的提示,介绍软件新功能的加入或者使用说明等,支持滑动且下面会有几个圆点,显示共有多少页和当前图片的位置,类似如下效果: 2. 引导页具体实现功能如下: 可以左右滑动图片. 图片的索引圆点显示,看出当前图片所在的位置和图片的数量. 可任意左右滑动. 图片的索引圆点带有动画效果. 最后一页显示按钮,点击进入应用. 3. 引导页实现逻辑过程: 利用ViewPager实现用户引导界面. 在这里,我们需要用到google提到的一个支持包—

Android用户引导页实现,圆点实现动画效果

当前市面上比较流行的应用,用户引导页已经是一个必不可缺的功能点了,简单的介绍下应用的基础功能或者版本升级功能点介绍. 那么常用的用户引导页是如何实现的呢?这篇文章就说说我个人用到的,并且觉得使用不错的效果. 1.首先定义布局文件guide_layout.xml文件,主要使用ViewPager做页面显示,使用一个圆点布局显示圆点,圆点根据图片数目动态添加. guide_layout.xml文件的代码如下: <?xml version="1.0" encoding="utf