原項目Github地址:https://github.com/huanchangfjx/ImagePager
記錄和總結下用到的一個開源控件。
最近項目在寫一個類似于網盤功能的模塊,因此在預覽圖片文件的時候,需要用到圖片的查看工具。在網上瀏覽了很多第三方的工具和框架,發現很多圖片的查看控件都已經做的很好了,而且功能也十分強大。但是有一個缺點就是自定義的地方太少,比如說我們的項目需要在圖片預覽的界面加上分享和其他的功能。最后找到了這個控件,集成簡單,而且自己改造起來也比較方便。
- Step 1
先從上面的github的項目把項目下載下來,項目的結構是這樣的:
項目結構
把其中的imagepaperlib文件夾拷貝到你項目的根目錄下,然后在Gradle里面添加一下依賴,這里有個bug,得把imagepaperlib這個工程里的Manifest里面的Lanucher給去掉,不然你的項目會在桌面生成2個icon。
Step 2
把APP目錄下的Java代碼和Res資源加入到你的項目,此處很簡單但是要細心點,別落了東西。
完成這步后,就可以進行我們自定義的改造了。Step 3
其實讀下源碼可以看出,這個項目的思路還是很簡單的,利用數據量動態生成Viewpager的頁數,同時可以指定自定義的指示器,用法很簡單:
Intent it = new Intent(NetDiskActivity.this, ImagePagerActivity.class);
it.putStringArrayListExtra(ImagePagerActivity.EXTRA_IMAGE_URLS, imageUrls);
it.putExtra(ImagePagerActivity.EXTRA_IMAGE_INDEX, position);
it.putExtra(ImagePagerActivity.EXTRA_ALLRESOURCES, (Serializable) newsImages);
startActivity(it);
把你需要的數據傳遞過去就行了,有需要的同學可以自行下載下來琢磨下。