ViewPager左右滑动

布局:

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

java代码

public class MainActivity extends AppCompatActivity {
    private ViewPager viewPager;
    private List<ImageView> list;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        viewPager = (ViewPager) findViewById(R.id.viewpager_main);
        initImageViews();
        MyPagerAdapter adapter = new MyPagerAdapter();
        viewPager.setAdapter(adapter);
    }

    private void initImageViews() {
        list = new ArrayList<ImageView>();
        //设置宽度和高度
        ViewGroup.LayoutParams params = new ViewGroup.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT);
        //设置图片1.
        ImageView image1 = new ImageView(this);
        image1.setLayoutParams(params);
        image1.setImageResource(R.mipmap.guide_1);
        //设置图片2.
        ImageView image2 = new ImageView(this);
        image2.setLayoutParams(params);
        image2.setImageResource(R.mipmap.guide_2);
        //设置图片3.
        ImageView image3 = new ImageView(this);
        image3.setLayoutParams(params);
        image3.setImageResource(R.mipmap.guide_3);
        //添加到集合中
        list.add(image1);
        list.add(image2);
        list.add(image3);
    }

    //自己创建一个PageAdapter的子类。
    private class MyPagerAdapter extends PagerAdapter {

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

        @Override
        public boolean isViewFromObject(View view, Object object) {
            return view == object;//判断是否是同一个对象,如果是,则不创建,否则就创建。
        }

        //需要添加对象到容器中。

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

        //销毁
        @Override
        public void destroyItem(ViewGroup container, int position, Object object) {
            container.removeView(list.get(position));
            // container.removeView((View) object);
        }
    }
}
时间: 2024-10-24 18:45:38

ViewPager左右滑动的相关文章

ViewDragHelper实现QQ5.0侧滑并处理与ViewPager的滑动冲突

QQ5.0的侧滑效果有多种实现方式, 如http://blog.csdn.net/lmj623565791/article/details/39257409   就是利用HorizontalScrollView实现的,简单实用; 如http://blog.csdn.net/manoel/article/details/39013095/   通过改造SlidingMenu实现,没有改变原有SlidingMenu功能,屏幕边缘侧滑也可以.... 相对来说ViewDragHelper实现方式最为复杂

android ViewPager左右滑动翻页,并可以删除page

首先新建一个Activity,继承FragmentActivity. 初始化一个Fragment的List集合,用于像FragmentStatePagerAdapter填充数据,而ViewPager由FragmentStatePagerAdapter的实例进行初始化.和ListView一样,Fragment的List集合的数据变了,就通知FragmentStatePagerAdapter进行界面刷新. ArrayList<Fragment> fragments =new ArrayList&l

Android重写ViewPager修改滑动灵敏度

使用ViewPager作为一个页面进行切换,里面可以存放很多View,但有时在操作View时不小心滑动一下就有可能跳到下一页,这并不是我们想要的,这里就需要重写ViewPager修改它的滑动条件 效果图 程序目录结构 BTViewPager.java package com.example.viewpagerdemo; import android.content.Context; import android.support.v4.view.ViewPager; import android.

Android 小问题整理1 ViewPagerIndicator和ViewPager的滑动监听

2015-10-30 今天使用ViewPagerIndicator时遇到个小问题,使用ViewPagerIndicator和ViewPager关联之后,再对ViewPager的滑动事件进行监听viewpager.setOnPageChangeListener(),然后监听失效了. 1 mViewPager.setAdapter(new MyAdapter()); 2 mIndicator.setViewPager(mViewPager);//关联ViewpagerIndicator和ViewPa

关于viewpager无法滑动

前几他做了一个关于viewpager的页面发生了很匪夷所思的事情就是viewpager无法滑动,代码反复看了好多遍都没有问题,属性,逻辑,判断,参数都没有问题为什么就是无法滑动呢.最后我把视线移动到了布局文件中,在listview的上面我include了一个布局但是这个clude的tabtitle.xml的布局中的线性布局中的宽度是用的matchparrent .所以这就导致了listview无法加载出来,然后把match改成wrap就ok了,平常自己小心一点就不会再犯了

android(8) ViewPager页面滑动切换

一.ViewPager页面滑动切换实现:    借鉴了别人的源码,还是比较容易实现的,而且这种效果还是经常使用的,特此记录一下: 效果图: 主界面: public class MainActivity extends Activity { private ViewPager mPager;// 页卡内容 private List<View> listViews; // Tab页面列表 private ImageView cursor;// 动画图片 private TextView t1, t

Android ViewPager+Fragment滑动选项卡,tab点击选项卡

有一段时间一直再研究这个,自Android 3.0以后,很少开发者再用以前的TabWidget控件了.那种效果不是很好,也不能滑动.后来陆续出现了各种各样滑动选项卡,每种的出现都各有优势吧.但我还是推荐ViewPager+Fragment滑动选项卡,tab点击选项卡.因为横屏或者竖屏效果都还不错,针对这种效果,还有一种开源框架的出现.接下来会有所介绍. 转载请注明出处:http://blog.csdn.net/qq_16064871 本文demo下载:请点击 一.ViewPagerActivit

判断viewpager左右滑动方向

实现思路就是通过viewpager的滑动监听,用参数position进行比较,同时当判断完这个要把比较的positon覆盖.这里简单介绍一下public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels),方法的第一个参数是页数位置,默认0开始,第二个参数是偏移的百分比,左滑的百分比是从0~1,右滑的参数是1~0,第三个个参数是滑动的像素点. 代码: viewPager.setOnPa

让viewpager不能滑动

1.实现原理: 自定义viewpager,重写onTouchEvent方法,什么触摸事件都不响应即可让viewpager不能滑动. 2.代码如下 public class NoScrollViewPager extends ViewPager { public NoScrollViewPager(Context context, AttributeSet attrs) { super(context, attrs); } public NoScrollViewPager(Context cont

Android之viewPager嵌套viewPager无法滑动子viewPager

现在最头疼的事就是需求不明确,这不,有遇到你个奇葩需求,父viewPager总共有三个选项卡,第一个选项卡里嵌入一个子viewPager,这时候问题就来了,子viewPager无法滑动,我猜的事父viewPager把子viewPager拦截了,于是尝试了下面的第一种方法 1.重写父viewPager的onInterceptTouchEvent方法 /** * @author 子墨 * * 2015-2-26上午8:59:50 */ public class MyViewPager extends