`
切切歆语
  • 浏览: 30213 次
  • 性别: Icon_minigender_1
  • 来自: 泸州市
社区版块
存档分类
最新评论

Android之ViewPager实现引导页(第一次打开App进入引导页,第二次直接进入APP主页面)

 
阅读更多

有的App当你第一次打开的是和常常会有引导页来描述一些App信息(功能,特点),当然也要做验证,验证第二次进入不进入引导页,直接进入App,此博客借助ViewPager来实现引导页, ViewPager类提供了多界面切换的新效果,是谷歌在3.0之后加入的新特性,所以需要引用android.support.v4.view.ViewPager。

效果:

代码:

main.xml

<LinearLayout 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:orientation="vertical"
    tools:context="com.channeloffdemo.MainActivity">
    <FrameLayout
        android:id="@+id/frame"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:background="#abcdef" >

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

        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="50dp"
            android:layout_gravity="bottom"
            android:gravity="center" >

            <View
                android:id="@+id/y1"
                android:layout_width="9dip"
                android:layout_height="9dip"
                android:layout_marginLeft="3dip"
                android:layout_marginRight="3dip"
                android:background="@drawable/y_focused" />

            <View
                android:id="@+id/y2"
                android:layout_width="9dip"
                android:layout_height="9dip"
                android:layout_marginLeft="3dip"
                android:layout_marginRight="3dip"
                android:background="@drawable/y_normal" />

            <View
                android:id="@+id/y3"
                android:layout_width="9dip"
                android:layout_height="9dip"
                android:layout_marginLeft="3dip"
                android:layout_marginRight="3dip"
                android:background="@drawable/y_normal" />
        </LinearLayout>
    </FrameLayout>

</LinearLayout>

MainActivity.Java

public class MainActivity extends FragmentActivity {

    private ViewPager viewPager;
    private List<View> listImg;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        if (ApplicationDB.preferences.getString("domeYinDao", "2").equals("1")) {
            Intent intent = new Intent(MainActivity.this, DomeActivity.class);
            startActivityForResult(intent, 1);
        } else {
            setContentView(R.layout.activity_main);
            initView();
        }


    }

    private void initView() {
        viewPager = (ViewPager) findViewById(R.id.viewpager);
        viewPager.setAdapter(new ViewPagerAdapter(getSupportFragmentManager(), showView()));
        listImg = new ArrayList<View>();
        listImg.add(findViewById(R.id.y1));
        listImg.add(findViewById(R.id.y2));
        listImg.add(findViewById(R.id.y3));
        viewPager.setOnPageChangeListener(showPageChange);
    }


    ViewPager.OnPageChangeListener showPageChange = new ViewPager.OnPageChangeListener() {

        @Override
        public void onPageSelected(int arg0) {
            for (int i = 0; i < listImg.size(); i++) {
                if (i == arg0) {
                    listImg.get(arg0).setBackgroundResource(R.drawable.y_focused);
                } else {
                    listImg.get(i).setBackgroundResource(R.drawable.y_normal);
                }
            }
        }

        @Override
        public void onPageScrolled(int arg0, float arg1, int arg2) {
            // TODO Auto-generated method stub

        }

        @Override
        public void onPageScrollStateChanged(int arg0) {
            // TODO Auto-generated method stub

        }
    };

    @Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
        super.onActivityResult(requestCode, resultCode, data);
        if (requestCode == 1) {
            if (resultCode == 1) {
                finish();
            }
        }
    }


    private List<Fragment> showView() {
        List<Fragment> listView = new ArrayList<Fragment>();
        listView.add(new Fragment1());
        listView.add(new Fragment2());
        listView.add(new Fragment3());
        return listView;
    }
}


由于代码太多,完整代码未给出,源码直接下载即可



分享到:
评论

相关推荐

    安卓欢迎界面引导页面viewpager相关-AndroidApp引导页面效果实现.rar

    在本案例中,"安卓欢迎界面引导页面viewpager相关-AndroidApp引导页面效果实现.rar" 是一个包含资源和代码的压缩包,用于演示如何使用ViewPager实现这样的引导页面。下面将详细讲解这个主题。 1. **ViewPager**:...

    安卓欢迎界面引导页面viewpager相关-App首次进入引导页面切换和动画.rar

    本资源"安卓欢迎界面引导页面viewpager相关-App首次进入引导页面切换和动画.rar"主要探讨了如何使用ViewPager实现这种效果,并可能涉及动画的添加。 ViewPager是Android SDK中的一个控件,它允许用户左右滑动来切换...

    viewpager实现app引导页效果

    在MainActivity的onCreate()方法中检查条件,如果满足显示引导页的要求,则跳转到引导页,否则直接进入主应用界面。 总结一下,"ViewPagerGuideProject"这个示例主要教会了我们以下几点: 1. 如何使用ViewPager...

    安卓欢迎界面引导页面viewpager相关-AndroidApp第一次使用引导界面的整体项目.zip

    本项目“安卓欢迎界面引导页面viewpager相关-AndroidApp第一次使用引导界面的整体项目.zip”聚焦于使用ViewPager实现这一功能。ViewPager是Android SDK中的一个组件,允许用户水平滑动浏览多个页面,非常适合用来...

    ViewPager实现App引导页

    通过使用ViewPager,我们可以轻松地实现一个动态且交互性强的App引导页。它不仅可以展示静态图片,还可以结合动画和其他交互元素,为用户提供更丰富的体验。同时,合理地处理滑动事件和存储用户状态,可以确保引导页...

    Android viewpager制作引导页

    在Android应用开发中,引导页(也称为启动教程或新手引导)是向用户介绍应用程序功能和界面的一种常见方法。本文将详细介绍如何使用ViewPager组件来创建一个简单易懂、适合小白的引导页。ViewPager是一个用于展示多...

    安卓欢迎界面引导页面viewpager相关-APP引导页效果大全.rar

    综上所述,"安卓欢迎界面引导页面viewpager相关-APP引导页效果大全"涵盖了Android应用开发中的重要技术点,包括ViewPager的使用、引导页设计、数据绑定、存储状态、手势检测以及性能优化等。这个压缩包文件可能是...

    app引导页的viewPager带圆点指示器

    在Android应用开发中,"app引导页的viewPager带圆点指示器"是一个常见的功能,用于初次使用应用时向用户展示一系列特色功能或操作指南。ViewPager是Android SDK提供的一种滑动视图容器,它可以实现页面间的左右滑动...

    安卓欢迎界面引导页面viewpager相关-ViewPage滑动加载大图和点击关注效果.rar

    【标题】中的“安卓欢迎界面引导页面viewpager相关”指的是在Android应用开发中,使用ViewPager组件来实现用户首次打开应用时的欢迎引导页。ViewPager是一个强大的视图切换工具,允许用户通过滑动来浏览多个页面,...

    android 应用引导页Viewpager实现

    本教程将详细讲解如何利用ViewPager组件来实现一个动态且交互丰富的引导页。ViewPager是一个强大的视图切换工具,常用于创建滑动页面效果,非常适合制作引导页。 首先,我们需要在项目的布局资源文件中创建一个包含...

    AndroidAPP程序引导页面

    描述中提到“已经实现可以直接使用”,这可能是指提供了一个预封装好的引导页实现,可能包含一个自定义的ViewPager扩展或者一个包含所有必要逻辑的库。这样的实现通常会简化开发者的工作,包括处理页面间的过渡动画...

    安卓欢迎界面引导页面viewpager相关-APP初始使用半透明引导界面.rar

    "安卓欢迎界面引导页面viewpager相关-APP初始使用半透明引导界面.rar"这个压缩包文件显然包含了实现此类功能的相关代码和资源。下面我们将深入探讨ViewPager及其在创建半透明引导界面中的应用。 **1. ViewPager组件...

    Android引导页Demo(第一次进入应用时加载)

    这个"Android引导页Demo(第一次进入应用时加载)"是一个实例,帮助开发者了解如何在Android项目中实现这样的功能。 首先,我们需要理解引导页的基本构成。一个简单的引导页通常包含以下几个部分: 1. **背景图片*...

    Android启动引导页使用ViewPager实现

    【Android启动引导页使用ViewPager实现】是Android应用开发中常见的一种设计模式,它通常用于向用户展示应用程序的主要功能或新特性。在用户首次打开应用时,引导页通过一系列的图片或动画来引导用户了解如何使用...

    android使用ViewPager组件实现app引导查看页面

    在Android应用开发中,`ViewPager`是一个非常重要的组件,它允许用户通过左右滑动来浏览多个页面,常用于实现类似轮播图或者引导页的效果。本篇将详细讲解如何使用`ViewPager`组件来实现APP的引导查看页面。 首先,...

    安卓欢迎界面引导页面viewpager相关-应用程序引导界面实现.zip

    7. **逻辑判断**:在App启动时,检查SharedPreferences中的标记,如果标记表明用户已经看过引导页,则直接跳过引导页,进入主界面。 8. **自定义布局**:每个Fragment可以根据需求自定义布局,例如添加文字描述、...

    Android 实现闪屏页+功能引导页

    在Android应用开发中,"闪屏页"(Splash Screen)和"功能引导页"(Feature Onboarding)是常见的用户界面元素,它们用于提升用户体验并帮助用户更好地理解和使用应用。本篇将详细介绍如何在Android平台上实现这两种...

    安卓欢迎界面引导页面viewpager相关-Android的APP应用中最常用的APP启动引导页常见的4种引导项目方式splashviewpageviewflipperscrollview.rar

    Android的APP应用中最常用的APP启动引导页,常见的4种引导项目方式:splash,viewpage,viewflipper,scrollview.rar,太多无法一一验证是否可用,程序如果跑不起来需要自调,部分代码功能进行参考学习。

    app引导页面

    在移动应用开发中,App引导页面(又称启动页、新手引导、欢迎页)是用户首次打开应用时看到的一系列交互式或静态页面,旨在介绍应用的核心功能,提供用户友好的入门体验,以及提升品牌形象。本文将深入探讨如何实现...

Global site tag (gtag.js) - Google Analytics