日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

类似QQ空间,微信朋友圈,微博主页等,展示图片的九宫格控件

發布時間:2023/12/14 编程问答 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 类似QQ空间,微信朋友圈,微博主页等,展示图片的九宫格控件 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

類似QQ空間,微信朋友圈,微博主頁等,展示圖片的九宮格控件,自動根據圖片的數量確定圖片大小和控件大小,使用Adapter模式設置圖片,對外提供接口回調,使用接口加載圖片,支持任意的圖片加載框架,如 Glide,ImageLoader,Fresco,xUtils3,Picasso 等,支持點擊圖片全屏預覽大圖。


該內容轉載至 NineGridView

NineGridView

類似QQ空間,微信朋友圈,微博主頁等,展示圖片的九宮格控件,自動根據圖片的數量確定圖片大小和控件大小,使用Adapter模式設置圖片,對外提供接口回調,支持任意的圖片加載框架,如 Glide,ImageLoader,Fresco,xUtils3,Picasso 等,支持點擊圖片全屏預覽大圖。

該項目是根據:https://github.com/laobie/NineGridImageView 修改而成,進行了優化擴展,使代碼更加簡單,喜歡原作的可以去使用。同時歡迎大家下載體驗本項目,如果使用過程中遇到什么問題,歡迎反饋。

聯系方式

  • 郵箱地址: liaojeason@126.com
  • QQ群: 489873144 (建議使用QQ群,郵箱使用較少,可能看的不及時)
  • 本群剛建立,旨在為使用我的github項目的人提供方便,如果遇到問題歡迎在群里提問。個人能力也有限,希望一起學習一起進步。

演示

1.用法

使用前,對于Android Studio的用戶,可以選擇添加:

compile 'com.lzy.widget:ninegridview:0.2.0'

或者使用

compile project(':ninegridview')

2.項目功能

  • 使用Adapter模式設置圖片
  • 當圖片數量只有一張時,自動根據圖片大小調整控件大小
  • 默認增加了圖片點擊全屏預覽效果,并附帶預覽動畫
  • 使用接口加載圖片,支持任意的圖片加載框架,如 Glide,ImageLoader,Fresco,xUtils3,Picasso 等
  • 整合了PhotoView圖片預覽
  • 使用接口抽出圖片的加載方式,可以方便的將Glide替換成自己喜歡的ImageLoader等
  • 支持fill個grid兩種顯示模式
  • 當獲取的圖片數量超過最大顯示的圖片數量時,最后一張圖片上會顯示剩余數量(類似于QQ的動態效果)
  • 使用代碼簡單,只需要幾行代碼
  • 其他功能增加中......

3.參數含義

自定義屬性名字參數含義
ngv_singleImageSize只顯示一張圖片時的最大圖片大小
ngv_singleImageRatio只顯示一張圖片時圖片寬高比
ngv_gridSpacing網格顯示圖片時,圖片之間的間距,默認3dp
ngv_maxSize最多顯示圖片的數量,默認最大9張
ngv_mode支持fill和grid兩種顯示模式,其中grid模式在顯示4張圖片時采用2*2的布局

4.代碼演示

1.在Application中初始化NineGridView的圖片加載器

NineGridView.setImageLoader(new PicassoImageLoader());/** Picasso 加載 */private class PicassoImageLoader implements NineGridView.ImageLoader {@Overridepublic void onDisplayImage(Context context, ImageView imageView, String url) {Picasso.with(context).load(url)//.placeholder(R.drawable.ic_default_image)//.error(R.drawable.ic_default_image)//.into(imageView);}@Overridepublic Bitmap getCacheImage(String url) {return null;}}

2.在自己的Adapter中初始化NineGridView的適配器

  • ImageInfo是庫中提供的數據Bean,需要兩個url,分別表示小圖和大圖的url,沒有大圖或者小圖,則都賦給相同的Url即可。
  • ClickNineGridViewAdapter是庫中提供的默認實現了點擊預覽的Adapter,如果不想使用預覽效果,可以自己繼承 NineGridViewAdapter 實現其中 onDisplayImage 方法即可。
ArrayList<ImageInfo> imageInfo = new ArrayList<>();List<EvaluationPic> imageDetails = item.getAttachments();if (imageDetails != null) {for (EvaluationPic imageDetail : imageDetails) {ImageInfo info = new ImageInfo();info.setThumbnailUrl(imageDetail.smallImageUrl);info.setBigImageUrl(imageDetail.imageUrl);imageInfo.add(info);}}holder.nineGrid.setAdapter(new ClickNineGridViewAdapter(context, imageInfo));

總結

以上是生活随笔為你收集整理的类似QQ空间,微信朋友圈,微博主页等,展示图片的九宫格控件的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。