您的位置:首页 > 移动开发 > Android开发

android 在不同设备上使图片不失真

2015-12-21 10:04 330 查看
Drawable d=getResources().getDrawable(R.drawable.income_flow_1);
//获取图片的bitmap对象
BitmapDrawable bd = (BitmapDrawable) d;
Bitmap bm = bd.getBitmap();

/

//通过屏幕比例  手动设置imageview的宽度和高度
float scale  =  (float)bm.getHeight()/bm.getWidth();
int screenWithPixels = getScreenWithPixels();
int height = (int)(screenWithPixels*scale);

LinearLayout.LayoutParams params = (LinearLayout.LayoutParams) Imageincome.getLayoutParams();

params.height = height;
params.width = screenWithPixels;

Imageincome.setImageBitmap(bm);


//获取设备宽高

public  int getScreenWithPixels(){

DisplayMetrics metrics = new DisplayMetrics();
this.getWindowManager().getDefaultDisplay().getMetrics(metrics);
return metrics.widthPixels;
}

public  int getScreenHeightPixels(){

DisplayMetrics metrics = new DisplayMetrics();
this.getWindowManager().getDefaultDisplay().getMetrics(metrics);
return metrics.heightPixels;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: