android学习之ViewPager 初步使用
2013-12-04 16:53
211 查看
----------------ViewPager的功能就是可以使视图滑动
大概步骤 1所需要的对象 List<View> 用于装载ImageView 对象 根据图片数量把 图片依次添加设置到ImageView中 然后将ImageView 添加到List<View>中
2.设置ViewPager的apapter重写PagerAdapter方法
3.设置adapter
注意 需要导包:
效果图
直接上代码:
adapter:
xml:
大概步骤 1所需要的对象 List<View> 用于装载ImageView 对象 根据图片数量把 图片依次添加设置到ImageView中 然后将ImageView 添加到List<View>中
2.设置ViewPager的apapter重写PagerAdapter方法
3.设置adapter
注意 需要导包:
android.support.v4
效果图
直接上代码:
public class MainActivity extends Activity { private List<View> views; private ViewPager viewpager; private ViewPageAdapter adapter; private Integer images[]={ R.drawable.a, R.drawable.b, R.drawable.c, R.drawable.d, R.drawable.e, R.drawable.f, R.drawable.g }; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); LayoutInflater inflater=getLayoutInflater(); views=new ArrayList<View>(); LinearLayout.LayoutParams params = new LinearLayout.LayoutParams( LinearLayout.LayoutParams.FILL_PARENT, LinearLayout.LayoutParams.FILL_PARENT); for(int i=0;i<images.length;i++){ ImageView iv=new ImageView(this); iv.setLayoutParams(params); //设置布局大小和LinearLayout一样 iv.setScaleType(ScaleType.FIT_XY); iv.setImageResource(images[i]); views.add(iv); } viewpager=(ViewPager) findViewById(R.id.viewpager); adapter=new ViewPageAdapter(views); viewpager.setAdapter(adapter); //绑定回调函数 viewpager.setOnPageChangeListener(new OnPageChangeListener() { @Override public void onPageSelected(int arg0) { } @Override public void onPageScrolled(int arg0, float arg1, int arg2) { } @Override public void onPageScrollStateChanged(int arg0) { } }); } }
adapter:
package com.example.test_viewpager; import java.util.List; import android.os.Parcelable; import android.support.v4.view.PagerAdapter; import android.support.v4.view.ViewPager; import android.view.View; public class ViewPageAdapter extends PagerAdapter { private List<View> views; public ViewPageAdapter(List<View> views) { this.views=views; } @Override public void destroyItem(View view, int arg1, Object arg2) { // TODO Auto-generated method stub ((ViewPager)view).removeView(views.get(arg1)); //移除 } //完成更新 @Override public void finishUpdate(View view) { } //获得总数 @Override public int getCount() { if(views!=null){ return views.size(); } return 0; } //实例化Item @Override public Object instantiateItem(View view, int arg1) { ((ViewPager)view).addView(views.get(arg1),0); return views.get(arg1); } @Override public boolean isViewFromObject(View view, Object arg1) { // TODO Auto-generated method stub return view==arg1; } //恢复状态 @Override public void restoreState(Parcelable arg0, ClassLoader arg1) { // TODO Auto-generated method stub } //保存状态 @Override public Parcelable saveState() { // TODO Auto-generated method stub return null; } //启动更新 @Override public void startUpdate(View arg0) { // TODO Auto-generated method stub } }
xml:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical" > <android.support.v4.view.ViewPager android:id="@+id/viewpager" android:layout_width="fill_parent" android:layout_height="wrap_content" /> </LinearLayout>
相关文章推荐
- android学习ViewPager的简单使用
- android viewpager 学习使用总结
- Android开发学习之使用ViewPager+PagerTabStrip制作可滑动的Tab
- Android学习之ViewPager(一)——ViewPager的简单使用
- Android学习之路---使用ViewPager实现引导页
- c# 程序员学习android(1)引导界面--viewpager的使用
- Android学习小Demo(17)关于ViewPager和Fragment的使用
- Android客户端之“微服私访”App的系统学习(四)使用ViewPager+Fragment实现Tab
- Android开发学习之使用ViewPager+PagerTabStrip制作可滑动的Tab
- Android学习-简易ViewPager的使用教程与Demo演示
- Android开发学习之使用ViewPager+PagerTabStrip制作可滑动的Tab
- Android中的ViewPager和 PagerAdapter的初步理解和使用
- Android开发学习之使用ViewPager打造应用引导界面面
- Android ViewPager学习之 使用详解
- Android ViewPager使用具体解释
- Android客户端之“微服私访”App的系统学习(五)使用Picasso实现轮播图以及使用自定义View实现个人中心页面
- Xamarin.Android ViewPager简单使用
- android 快速开发四、ViewPager+Fragment 组合使用
- Android clipChildren与clipToPadding使用以及简单ViewPager自定义切换效果
- Android ViewPager使用具体解释