我正在使用以下代码:
ImageView i = new ImageView(mContext);
i.setImageResource(mImageIds[位置]);
i.setScaleType(ImageView.ScaleType.FIT_XY);
//pixels settings !!!i.setLayoutParams(new Gallery.LayoutParams(200, 100));
但如您所见,它以像素为单位设置布局尺寸。
有谁知道如何做同样的事情,但在“浸”?
我正在使用以下代码:
ImageView i = new ImageView(mContext);
i.setImageResource(mImageIds[位置]);
i.setScaleType(ImageView.ScaleType.FIT_XY);
//pixels settings !!!i.setLayoutParams(new Gallery.LayoutParams(200, 100));
但如您所见,它以像素为单位设置布局尺寸。
有谁知道如何做同样的事情,但在“浸”?
以下辅助方法将输入设备独立像素 (DIP) 作为输入,并返回当前设备的实际像素。
private int getPixels(int dipValue) {
Resources r = getResources();
int px = (int)TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP,
dipValue,
r.getDisplayMetrics());
return px;
}
如果您将维度存储为资源,则可以使用
getResources().getDimensionPixelSize(id);
这也将使调整布局变得更加容易。
请参阅http://developer.android.com/guide/practices/screens_support.html#screen-independence
关于如何从 dpi 转换为像素。