【Android UI设计与开发】1.引导界面(一)ViewPager介绍和简单实现

1.ViewPager 实现效果图

2.ViewPager 实现功能

ViewPager类提供了多界面切换的新效果,新效果有如下特征:

<1>当前显示一组界面中的其中一个界面;

<2>当用户通过左右滑动界面时,当前的屏幕显示当前界面和下一个界面的一部分;

<3>滑动结束后,界面自动跳转到当前选择的界面中。

3.ViewPager详细说明

android-support-v4.jar 是谷歌官方给我们提供的一个兼容低版本安卓设备的软件包,里面包囊了只有在安卓3.0以上可以使用的api。而viewpager就是其中之一利用它,我们可以做很多事情,从最简单的导航,到页面菜单等等。那如何使用它呢,与ListView类似,我们也需要一个适配器,他就是PagerAdapter。

ViewPager对应官方文档地址为:http://developer.android.com/reference/android/support/v4/view/ViewPager.html

4、ViewPager的使用

分三个步骤来使用它:

1、在布局文件里加入该组件

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

注意:这个组件是用来显示左右滑动的界面的,如果不加载xml布局文件,他是不会显示内容的

2、加载要显示的页卡

LayoutInflater lf = getLayoutInflater().from(this);
        view1 = lf.inflate(R.layout.layout1, null);
        view2 = lf.inflate(R.layout.layout2, null);
        view3 = lf.inflate(R.layout.layout3, null);  

        viewList = new ArrayList<View>();// 将要分页显示的View装入数组中
        viewList.add(view1);
        viewList.add(view2);
        viewList.add(view3);  

3、在Activity里实例化ViewPager组件,并设置它的Adapter(就是PagerAdapter,方法与ListView一样的),在这里一般需要重写PagerAdapter。

public class MyViewPagerAdapter extends PagerAdapter {
    private List<View> mListViews;  

    public MyViewPagerAdapter(List<View> mListViews) {
        this.mListViews = mListViews;//构造方法,参数是我们的页卡,这样比较方便。
    }    

    @Override
    public void destroyItem(ViewGroup container, int position, Object object) {
         container.removeView(mListViews.get(position));//删除页卡
    }

    @Override
    public Object instantiateItem(ViewGroup container, int position) {//这个方法用来实例化页卡
        container.addView(mListViews.get(position), 0);//添加页卡
        return mListViews.get(position);
    }

    @Override
    public int getCount() {
        return  mListViews.size();//返回页卡的数量
    }

    @Override
    public boolean isViewFromObject(View arg0, Object arg1) {
        return arg0==arg1;
    }

}

ViewPager的适配器是PagerAdapter,它是基类提供适配器来填充页面ViewPager内部,你很可能想要使用一个更具体的实现,如FragmentPagerAdapter或FragmentStatePagerAdapter。在这里需要说明一下,其实ViewPager应该和Fragment一起使用,至少谷歌官方是这么想的,但是在3.0之下,我们没有必要这么做。下面要注意,当你实现一个PagerAdapter,你必须至少覆盖以下方法:

instantiateItem(ViewGroup, int)
destroyItem(ViewGroup, int, Object)
getCount()
isViewFromObject(View, Object)

PagerAdapter对应的官方文档地址为:http://developer.android.com/reference/android/support/v4/view/PagerAdapter.html

源代码地址:https://github.com/YeXiaoChao/Yc_ui_viewpager

来源:http://blog.csdn.net/yangyu20121224/article/details/8980917

时间: 2024-10-07 20:59:07

【Android UI设计与开发】1.引导界面(一)ViewPager介绍和简单实现的相关文章

【Android UI设计与开发】第05期:引导界面(五)实现应用程序只启动一次引导界面

[Android UI设计与开发]第05期:引导界面(五)实现应用程序只启动一次引导界面 jingqing 发表于 2013-7-11 14:42:02 浏览(229501) 这篇文章算是对整个引导界面开发专题的一个终结了吧,个人觉得大部分的引导界面基本上都是千篇一律的,只要熟练掌握了一个,基本上也就没什么好说的了,要是在今后的开发中遇到了更好玩,更有趣的引导界面,博主也会在这里及时的跟大家分享,今天的内容主要是教大家的应用程序只有在第一次启动的时候显示引导界面,以后在启动程序的时候就不再显示了

【转】【Android UI设计与开发】第07期:底部菜单栏(二)Fragment的详细介绍和使用方法

原始地址:http://blog.csdn.net/yangyu20121224/article/category/1431917/1 由于TabActivity在Android4.0以后已经被完全弃用,那么我就不再浪费口水继续讲解它了,取而代之的是Fragment.Fragment是Android3.0新增的概念,Fragment翻译成中文是碎片的意思,不过却和Activity十分的相似,这一篇我花大量的篇幅来详细的讲解Fragment的介绍和使用方法. 一.Fragment的基础知识介绍  

【Android UI设计与开发】3.引导界面(三)实现应用程序只启动一次引导界面

大部分的引导界面基本上都是千篇一律的,只要熟练掌握了一个,基本上也就没什么好说的了,要想实现应用程序只启动一次引导界面这样的效果,只要使用SharedPreferences类,就会让程序变的非常简单,下面来详细介绍一下这个类的使用方法 1.SharedPreferences的详细介绍和用法 其实在 20.游戏开发基础(游戏数据存储)中已经有过介绍了,为了文章的完整还是再介绍一遍. 做软件开发应该都知道,很多软件会有配置文件,里面存放这程序运行当中的各个属性值,由于其配置信息并不多,如果采用数据库

【Android UI设计与开发】2.引导界面(二)使用ViewPager实现欢迎引导页面

1.实现的效果 2.编码前的准备工作 ViewPager是Android3.0之后提供的新特性,所以要想让你的应用向下兼容就必须要android-support-v4.jar这个包的支持,这是一个来自google提供的一个附加包.没有的百度下就有了. 3.具体的编码实现 (1)布局界面比较简单,加入ViewPager组件,以及底部的引导小点 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android&q

【Android UI设计与开发】使用ViewPager实现欢迎引导页面

一.实现的效果图 每次看别人的代码前,必需要先看实现的效果图达到了一个什么样的效果,是不是跟自己想要实现的效果类似.有图才有真相嘛,同一时候,最下方有源代码的下载地址,差点儿源代码的每一行都有凝视,写的通俗易懂.很清晰.        二.编码前的准备工作 ViewPager是Android3.0之后提供的新特性,所以要想让你的应用向下兼容就必需要android-support-v4.jar这个包的支持.这是一个来自google提供的一个附加包. 三.项目结构图 四.详细的编码实现 1.  布局

【Android UI设计与开发】第06期:底部菜单栏(一)使用TabActivity实现底部菜单栏

转载请注明出处:http://blog.csdn.net/yangyu20121224/article/details/8989063       从这一篇文章开始,我们将进入到一个应用程序主界面UI的开发和设计中了,底部菜单栏在Android的应用开发当中占有非常重要的地位.几乎所有的手机应用程序都有底部菜单栏这样的控件,主要是因为手机的屏幕大小有限,这样一种底部菜单栏实现起来的效果可以很方便的为用户切换自己所需要的界面,具有更强的交互性.底部菜单栏的样式和效果也是五花八门,多的数不胜数,但是

【Android UI设计与开发】第12期:顶部标题栏(三)ActionBar实现层级导航的返回效果

转载请注明出处: http://blog.csdn.net/yangyu20121224/article/details/9059459       今天我们继续来讲解ActionBar的使用,不清楚这个类的读者可以翻阅博主前几篇的文章或者在网络上查阅相关 的资料,关于这个类讲解的文章还是很多的,功能确实也很强大.好的,话不多说,让我们赶快进入正题吧. 一.使用应用图标实现层级导航 在默认的情况下,应用程序图标显示在操作栏的左边.你能够把这个图标当做操作项来使用,应用程序可以在这 个图标上响应以

【Android UI设计与开发】5.底部菜单栏(二)使用Fragment实现底部菜单栏

既然 Fragment 取代了TabActivity,当然 TabActivity 的能实现的菜单栏,Fragment 当然也能实现.主要其实就是通过菜单栏的点击事件切换 Fragment 的显示和隐藏. 来看看栗子吧: 1.效果图来了: 2.代码具体实现 (1)对应的 Fragment 编辑代码和布局实现在前面的Fragment介绍和简单实现  中已经有提及,代码中没复杂的地方,此处略过,具体可看实例代码. (2)菜单栏实现,这里使用代码实现的,其实也可以用布局文件实现,代码如下: packa

【Android UI设计与开发】第09期:底部菜单栏(四)Fragment+PopupWindow仿QQ空间最新版底部菜单栏

转载请注明出处:http://blog.csdn.net/yangyu20121224/article/details/9023451          在今天的这篇文章当中,我依然会以实战加理论结合的方式教大家如何设计出自己觉得很炫的UI界面.好的,话不多说,进入正题.今天的这篇文章主要是以仿QQ空间的底部菜单栏效果为主,实现的效果有: <1>实现了点击按钮时的切换图片效果: <2>实现了点击按钮时的切换界面效果: <3>实现了点击中间圆形按钮时弹出菜单以及按钮图片切