我是靠谱客的博主 故意早晨,最近开发中收集的这篇文章主要介绍PhotoView实现放大缩小功能,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

 compile 'com.github.chrisbanes.photoview:library:1.2.4'


布局文件:在mainactivity中

<com.bway.photoview.HakViewPager
        Android:id="@+id/viewpager"
        android:layout_width="match_parent"
        android:layout_height="match_parent" />

为了避免冲突需要重写viewpager中的方法

public class HakViewPager extends ViewPager {
    public HakViewPager(Context context) {
        super(context);
    }

    public HakViewPager(Context context, AttributeSet attrs) {
        super(context, attrs);
    }

    @Override
    public boolean onInterceptTouchEvent(MotionEvent ev) {
        try {
            return super.onInterceptTouchEvent(ev);
        } catch (IllegalArgumentException e) {
            return false;
        }
    }
}

在mainactivity中引用

public class MainActivity extends AppCompatActivity {

    private HakViewPager hvpPhoto;
    private List<String> images;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        hvpPhoto = (HakViewPager) findViewById(R.id.viewpager);
        images = new ArrayList<>();
        images.add("http://pic.58pic.com/58pic/14/27/45/71r58PICmDM_1024.jpg 

");
        images.add("http://pic17.nipic.com/20111122/6759425_152002413138_2.jpg 

");
        images.add("http://pic10.nipic.com/20100929/4308872_150108084472_2.jpg 

");

        hvpPhoto.setAdapter(new PagerAdapter() {
            @Override
            public Object instantiateItem(ViewGroup Container, int position) {
                PhotoView photoView = new PhotoView(container.getContext());
                Glide.with(container.getContext()).load(images.get(position))
                        .into(photoView);
                container.addView(photoView);
                return photoView;
            }

            @Override
            public void destroyItem(ViewGroup container, int position, Object object) {
                container.removeView((View) object);
            }

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

            @Override
            public boolean isViewFromObject(View view, Object object) {
                return view == object;
            }
        });
    }
}

最后

以上就是故意早晨为你收集整理的PhotoView实现放大缩小功能的全部内容,希望文章能够帮你解决PhotoView实现放大缩小功能所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(31)

评论列表共有 0 条评论

立即
投稿
返回
顶部