一、簡介
屬于你的侵入性低的大圖查看器,高仿微信、微博等完美的過渡動畫,同樣支持視頻,另外您可以自定義加載圖片的內(nèi)核,例如Glide,Picasso或其他的
github地址:https://github.com/FlyJingFish/OpenImage
GitHub - FlyJingFish/OpenImage: ??????查看大圖、圖片瀏覽,支持拖動圖片手勢返回,支持視頻,支持大圖,支持聊天頁面查看大圖功能,支持自定義圖片加載庫
APK下載:點此下載apk
二、特色功能
1,支持自定義圖片加載引擎
2,支持多種圖片緩存模式
3,支持聊天界面的查看大圖功能
4,支持微信聊天頁面大圖不在聊天頁面時回到點擊位置的效果
5,支持全部 ImageView.ScaleType 顯示模式的圖片打開大圖效果,并且新增startCrop、endCrop、autoStartCenterCrop、autoEndCenterCrop四種顯示模式
6,支持圖片和視頻混合數(shù)據(jù)
7,支持傳入包含圖片的 RecyclerView、ViewPager、ViewPager2、ListView、GridView 和 多個ImageView 的調(diào)用方式,傻瓜式調(diào)用,無需關(guān)心圖片切換后該返回到哪個位置
8,支持大圖和大圖閱讀模式
9,支持自定義大圖切換效果(PageTransformer)
三、效果演示
1,支持功能Demo一覽

功能Demo一覽
2,支持聊天頁面

聊天頁面
3,同樣支持視頻

打開視頻
4,RecyclerView常見使用場景

RecyclerView
四、使用步驟(簡單兩步傻瓜式使用)
1,你的數(shù)據(jù)需要實現(xiàn) OpenImageUrl 接口
public class ImageEntity implements OpenImageUrl {
public String url;
public ImageEntity(String url) {
this.url = url;
}
public ImageEntity() {
}
@Override
public String getImageUrl() {
return url;//大圖鏈接(或視頻的封面大圖鏈接)
}
@Override
public String getVideoUrl() {
return null;//視頻鏈接
}
@Override
public String getCoverImageUrl() {
return url;//封面小圖鏈接(或視頻的封面小圖鏈接)
}
@Override
public MediaType getType() {
return MediaType.IMAGE;//數(shù)據(jù)是圖片還是視頻
}
}
2,在頁面調(diào)用
//在點擊時調(diào)用(以下以RecyclerView為例介紹)
OpenImage.with(activity)
//點擊ImageView所在的RecyclerView(也支持設(shè)置setClickViewPager2,setClickViewPager,setClickGridView,setClickListView,setClickImageView)
.setClickRecyclerView(recyclerView,new SourceImageViewIdGet() {
@Override
public int getImageViewId(OpenImageUrl data, int position) {
return R.id.iv_image;//點擊的ImageView的Id
}
})
//點擊的ImageView的ScaleType類型(如果設(shè)置不對,打開的動畫效果將是錯誤的)
.setSrcImageViewScaleType(ImageView.ScaleType.CENTER_CROP,true)
//RecyclerView的數(shù)據(jù)
.setImageUrlList(datas)
//點擊的ImageView所在數(shù)據(jù)的位置
.setClickPosition(position)
//開始展示大圖
.show();
五、更多使用方法詳看Github,歡迎使用,歡迎Star??????
https://github.com/FlyJingFish/OpenImage
詳細使用文檔快捷地址