當(dāng)前位置:首頁(yè) > IT技術(shù) > 移動(dòng)平臺(tái) > 正文

Android RecyclerView 列表加載圖片寬高適配
2021-10-08 17:27:17

圖片的寬度為手機(jī)屏幕寬度,高度自適應(yīng)

adapter item布局

<ImageView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:scaleType="fitXY"
android:adjustViewBounds="true"/>


Android里ImageView的ScaleType屬性,這個(gè)屬性決定了一張圖片如何顯示在ImageView上,常用的值有以下幾個(gè):CENTER,CENTER_CROP,CENTER_INSIDE,F(xiàn)IT_CENTER,F(xiàn)IT_END,F(xiàn)IT_START,F(xiàn)IT_XY,MATRIX。

這里使用的是FIT_XY,就是圖片會(huì)填充 ImageView 的寬高,會(huì)出現(xiàn)拉伸與壓縮現(xiàn)象,在這里設(shè)置 高度為自適應(yīng),屬性 adjustViewBounds 為 true ,則會(huì)形成 ImageView 與 圖片的寬高一至的樣式效果



在Java 代碼中動(dòng)態(tài)設(shè)置也是一種方法

  //獲取屏幕像素對(duì)象實(shí)例
DisplayMetrics displayMetrics = context.getResources().getDisplayMetrics();

//寬度
int widthPixels = displayMetrics.widthPixels;

ViewGroup.LayoutParams lp = ivImg.getLayoutParams();
lp.height = ViewGroup.LayoutParams.WRAP_CONTENT;
lp.width = widthPixels;
ivImg.setLayoutParams(lp);

//這里設(shè)置圖片最大的高度與寬度適配
ivImg.setMaxWidth(widthPixels);
ivImg.setMaxHeight(widthPixels * 2);

本文摘自 :https://blog.51cto.com/9

開(kāi)通會(huì)員,享受整站包年服務(wù)立即開(kāi)通 >