Android UI设计(引导界面):ViewPager之基本用法_第1张图片

一、ViewPager介绍

  ViewPager是由google为我们提供的兼容android的软件包v4提供的。利用它可以做许多事情,比如我们平时常见的软件刚安装时的滑动面,淘宝的自动循环的界面、最简单的导航等。
  它的使用与ListView相似需要一个适配器,只是它需要的是PagerAdapter,但是它又有不同之处,listview中传递的是对象,而ViewPager中传递的是View

二、v4 jar包的导入

先找到jar包
D:\software\android\Sdk\Sdk\extras\android\m2repository\com\android\support
Android UI设计(引导界面):ViewPager之基本用法_第2张图片
Android UI设计(引导界面):ViewPager之基本用法_第3张图片
Ecplise:点击jar包,复制,点开ecplise中相应的project,找到lib文件夹,复制进去即可。
Android Studio:File ——projectconstructor——viewpager-dependence-点击“+”找到support v4即可。

三、简单使用例子

ViewPager的使用,也是先需要在布局中引入,但是在布局文件中引入时需要注意要写全包名,view是小写。

<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"    tools:context=".MainActivity" >        <android.support.v4.view.ViewPager       android:id="@+id/viewpager"         android:layout_width="match_parent"        android:layout_height="match_parent"        >    android.support.v4.view.ViewPager>RelativeLayout>

PagerAdapter

适配器的创建需要重写它的两个方法destroyItem()<销毁>和 instantiateItem()<初始化>

package com.example.myviewpager;import java.util.List;import android.graphics.Picture;import android.support.v4.view.PagerAdapter;import android.view.View;import android.view.View.OnClickListener;import android.view.ViewGroup;import android.widget.Button;import android.widget.Toast;public class MyViewPagerAdapter extends PagerAdapter{    private List views;    public MyViewPagerAdapter(List views) {        super();        this.views = views;    }    @Override    public void destroyItem(ViewGroup container, int position, Object object) {        container.removeView( views.get(position));    }    @Override    public Object instantiateItem(ViewGroup container, int position) {        View view=views.get(position);        container.addView(view);        if(position==2){        Button button=(Button) view.findViewById(R.id.button);        button.setOnClickListener(new OnClickListener() {            @Override            public void onClick(View v) {                Toast.makeText(v.getContext(),"点击成功", Toast.LENGTH_SHORT).show();            }        });        }        return view;    }    @Override    public int getCount() {        // TODO Auto-generated method stub        return views.size();    }    @Override    public boolean isViewFromObject(View arg0, Object arg1) {        // TODO Auto-generated method stub        return arg0==arg1;    }}

MainActivity:

public class MainActivity extends Activity {    private ViewPager mviewpager;    private List views;    private MyViewPagerAdapter madapter;    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        mviewpager=(ViewPager) findViewById(R.id.viewpager);        views=new ArrayList();        View view1=getLayoutInflater().inflate(R.layout.viewpager_item1, null);        View view2=getLayoutInflater().inflate(R.layout.viewpager_item2, null);        View view3=getLayoutInflater().inflate(R.layout.viewpager_item3, null);        views.add(view1);        views.add(view2);        views.add(view3);        madapter=new MyViewPagerAdapter(views);        mviewpager.setAdapter(madapter);    }

更多相关文章

  1. android Matrix处理图片原理及方法整理
  2. 全屏显示布局随机图片的显示
  3. Android调用系统自定义设置界面
  4. android 图片内存溢出
  5. Android 登陆界面及记住用户名密码
  6. Android实现图片随意拖动、缩放
  7. Android 之 自定义适配器
  8. Android图片双指缩放,单指移动实现
  9. android 获取assets下的图片

随机推荐

  1. SQL Server代理服务无法启动怎么办
  2. SQL服务器无法启动的解决方法
  3. SQL2008的sa账户被禁用其他账户无法连接
  4. MSSQLSERVER不同版本设置开启远程连接(sa
  5. SQL Agent服务无法启动的解决方法
  6. SQL Server 2008 R2登录失败的解决方法
  7. SQL SERVER 2012新增函数之逻辑函数IIF
  8. SQL SERVER 2012新增函数之字符串函数FOR
  9. SQL SERVER 2012新增函数之逻辑函数CHOOS
  10. SQL SERVER2012中新增函数之字符串函数CO