在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
开源软件名称:transferee开源软件地址:https://gitee.com/zl_freedom/transferee开源软件介绍:Transfereetransferee 可以帮助你完成从缩略视图到原视图的无缝过渡转变, 优雅的浏览普通图片、长图、gif图、视频等不同格式的多媒体。 支持的功能:
如有任何问题欢迎提 Issues PreviewSampleDependencystep1. allprojects { repositories { ... maven { url 'https://jitpack.io' } }} step2. // 添加所有 module [包括 Transferee、GlideImageLoader、PicassoImageLoader、UniversalImageLoader]implementation 'com.github.Hitomis:transferee:1.6.1'// 单独添加核心 module Transferee, 之后至少还需要添加以下三种图片加载器中的一种implementation 'com.github.Hitomis.transferee:Transferee:1.6.1'// 添加 Glide 图片加载器implementation 'com.github.Hitomis.transferee:GlideImageLoader:1.6.1'// 添加 Picasso 图片加载器implementation 'com.github.Hitomis.transferee:PicassoImageLoader:1.6.1'// 添加 Universal 图片加载器implementation 'com.github.Hitomis.transferee:UniversalImageLoader:1.6.1' Usage如果针对单个 ImageView 使用,将非常简单: Transferee transfer = Transferee.getDefault(context);transfer.apply(TransferConfig.build() .setImageLoader(UniversalImageLoader.with(getApplicationContext())) .setSourceUrlList(SourceConfig.getMixingSourceGroup()) .create()).show());// 离开页面不要忘记调用transfer.destroy(); 如果你需要更多的功能,下面是 transferee 完整的使用示例: step 1: 一个页面只创建一个 transferee 示例 (建议写在 onCreate 方法中) transferee = Transferee.getDefault(context); step 2: 为 transferee 创建参数配置器 TransferConfig config = TransferConfig.build() .setSourceImageList(sourceUrlList) // 资源 url 集合, String 格式 .setSourceUriList(sourceUriList) // 资源 uri 集合, Uri 格式 .setMissPlaceHolder(R.mipmap.ic_empty_photo) // 资源加载前的占位图 .setErrorPlaceHolder(R.mipmap.ic_empty_photo) // 资源加载错误后的占位图 .setProgressIndicator(new ProgressPieIndicator()) // 资源加载进度指示器, 可以实现 IProgressIndicator 扩展 .setIndexIndicator(new NumberIndexIndicator()) // 资源数量索引指示器,可以实现 IIndexIndicator 扩展 .setImageLoader(GlideImageLoader.with(getApplicationContext())) // 图片加载器,可以实现 ImageLoader 扩展 .setBackgroundColor(Color.parseColor("#000000")) // 背景色 .setDuration(300) // 开启、关闭、手势拖拽关闭、显示、扩散消失等动画时长 .setOffscreenPageLimit(2) // 第一次初始化或者切换页面时预加载资源的数量,与 justLoadHitImage 属性冲突,默认为 1 .setCustomView(customView) // 自定义视图,将放在 transferee 的面板上 .setNowThumbnailIndex(index) // 缩略图在图组中的索引 .enableJustLoadHitPage(true) // 是否只加载当前显示在屏幕中的的资源,默认关闭 .enableDragClose(true) // 是否开启下拉手势关闭,默认开启 .enableDragHide(false) // 下拉拖拽关闭时,是否先隐藏页面上除主视图以外的其他视图,默认开启 .enableDragPause(false) // 下拉拖拽关闭时,如果当前是视频,是否暂停播放,默认关闭 .enableHideThumb(false) // 是否开启当 transferee 打开时,隐藏缩略图, 默认关闭 .enableScrollingWithPageChange(false) // 是否启动列表随着页面的切换而滚动你的列表,默认关闭 .setOnLongClickListener(new Transferee.OnTransfereeLongClickListener() { // 长按当前页面监听器 @Override public void onLongClick(ImageView imageView, String imageUri, int pos) { saveImageFile(imageUri); // 使用 transferee.getFile(imageUri) 获取缓存文件保存,视频不支持 } }) .bindImageView(imageView, source) // 绑定一个 ImageView, 所有绑定方法只能调用一个 .bindListView(listView, R.id.iv_thumb) // 绑定一个 ListView, 所有绑定方法只能调用一个 .bindRecyclerView(recyclerView, R.id.iv_thumb) // 绑定一个 RecyclerView, 所有绑定方法只能调用一个 step 3: 显示 transferee transferee.apply(config).show(); step 4: 离开页面的时候需要销毁 transferee 中的资源,防止内存泄漏 (建议写在 onDestroy 方法中) transferee.destroy() Config
Method
Thanks如果你觉得这个项目帮助到了你,对你项目的用户体验有提升,或者帮你解决了一些问题,可以扫描下面支付宝二维码给个随意打赏或者给个 star。你的鼓励是我维护项目最大的动力。 另外由于平时比较忙,都是自己的休息时间更新,如果你的 issues 比较急,可以给个针对你问题觉得合适的打赏,我会优先解决。时间不够充裕,还请谅解。 Update log
LicenceCopyright 2017 Vans, Inc.Licensed under the Apache License, Version 2.0 (the "License");you may not use this file except in compliance with the License.You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0Unless required by applicable law or agreed to in writing, softwaredistributed under the License is distributed on an "AS IS" BASIS,WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.See the License for the specific language governing permissions andlimitations under the License. |
请发表评论