Android實現圖片寬度全屏,高度隨圖片大小動態適配
阿新 • • 發佈:2019-02-01
1.layout中設定圖片寬度match_parent 高度wrap_content
2.獲得圖片的高度,可以讓後臺直接傳過來,也可以拿到圖片後在移動端自行獲得
3.計算圖片寬高比(注意應為float型),以及螢幕的寬度 用螢幕寬度/寬高比得到圖片應設定的高度
4.得到ImageView控制元件的LayoutParams,重新設定params
int imgWidth=Integer.valueOf(jsonArray.getJSONObject(0).getString("w")); int imgHeight=Integer.valueOf(jsonArray.getJSONObject(0).getString("h")); screenWidth=ScreenUtils.getScreenWidth(mContext); float ratio=(float) imgWidth/(float) imgHeight; height=(int)(screenWidth/ratio); ViewGroup.LayoutParams params=photo.getLayoutParams(); params.height=height; params.width=screenWidth; photo.setLayoutParams(params);
獲取螢幕寬度:
/**
* 獲取螢幕寬度(px)
*/
public static int getScreenWidth(Context context) {
return context.getResources().getDisplayMetrics().widthPixels;
}