Anroid大图查看器

在这里插入图片描述

最近看到微信朋友圈查看大图那叫一个牛哇,Android5.0刚好有个share的转场动画,于是自己写了一个。。。

先分享一个地址

git地址

然后开始使用

导入

更目录下build.gradle添加

allprojects {
    repositories {
    	...
        maven { url "https://jitpack.io" }
    }
}

在需要依赖的模块下面添加

dependencies {
   	...
	implementation 'com.github.peoplewithnoname:ImageBrowse:1.0.4.2'
}

导入完成就需要在manifest里面添加

 <activity
            android:name="com.caihao.imagebrowse.ImageBrowseActivity"
            android:screenOrientation="portrait" />

别忘记网络请求权限

这句代码很明显 就是一个实现ImageLoader接口的GlideImageLoader(glide图片加载 都懂的…)

ImageBrowseUtils.setImageLoader(new GlideImageLoader());

重要的方法来了 我将其分为单张图片查看和多张图片查看

1.单张图片查看:

private ImageBrowseTools imageBrowseTools;//查看大图的工具类;

 		//初始化ImageBrowseTools管理类(一张图只需要设置activity和tag)
        imageBrowseTools = new ImageBrowseTools.Builder()
         		.setTag(TAG)//TAG为常量
                .setActivity(this).build();
        //打开大图浏览(view:会进行放大动画的view,url:图片链接)
         imageBrowseTools.start(view, url);

2.多张图片查看

private ImageBrowseTools imageBrowseTools;//查看大图的工具类;

 		//初始化ImageBrowseTools管理类
        imageBrowseTools = new ImageBrowseTools.Builder()
                .setActivity(this)
                .setTag(TAG)
                .setActivityRegisterCallback(activityRegisterCallback)
                .setAfterIndexCallback(afterIndexCallback).build();
        //打开大图浏览 position:当前所处位置
        imageBrowseTools.start(view, urlList, position);

ActivityRegisterCallback activityRegisterCallback = new ActivityRegisterCallback() {
        @Override
        public View getView(int index) {//根据位置下标返回对应的View
            GridLayoutManager manager = (GridLayoutManager) recyclerView.getLayoutManager();
            View itemView = manager.findViewByPosition(index);
            return itemView ;
        }
    };

    AfterIndexCallback afterIndexCallback = new AfterIndexCallback() {
        @Override
        public void after(int index) {//每次index改变之后的动作
            recyclerView.smoothScrollToPosition(index);
        }
    };

注 如果一个Activity有单张图片查看和多张图片查看的,请看看源码,TAG是不同的

本文章是基于5.0 转场动画写

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值