嗯,我一直在想,有没有一个简单的方法,从dp或毫米波,甚至英寸到px。(比如: 6dp应该是20 px ),似乎所有的事情都是用px做的,但我想用它们来保持不同屏幕的比例,并且粗略地知道有多大(用像素猜测really...bothering),谢谢你,如果这个问题太模糊了,我很抱歉。
发布于 2015-01-22 02:10:47
无法以编程方式将毫米波或甚至英寸转换为px。如果您想支持不同的屏幕,您可以遵循文档这里。要将dp转换为px,还可以使用以下方法:
/**
* Convert dp to px.
* @param context
* @param dp the input dp.
* @return the output px.
*/
public static int dpToPx(Context context, int dp) {
float density = context.getResources().getDisplayMetrics().density;
return (int) (dp * density + 0.5);
}更新:
以下是如何获取设备的宽度和高度像素:
DisplayMetrics metrics = context.getResources().getDisplayMetrics();
int widthPixels = metrics.widthPixels;
int heightPixels = metrics.heightPixels;https://stackoverflow.com/questions/28079490
复制相似问题