1. 程式人生 > >Android實現圖片寬度全屏,高度隨圖片大小動態適配

Android實現圖片寬度全屏,高度隨圖片大小動態適配

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;
    }