在android中有许多不同类型的屏幕分辨率可用。如何使用java代码调整屏幕分辨率?
答案 0 :(得分:1)
无法以编程方式更改屏幕分辨率。 AFAIK,您需要进行硬件级别修改才能更改它。
相反,您必须以能够跨显示器扩展的方式编写应用程序。使用不同大小和密度的多个图像,使用dp单位而不是px单位。制作不同屏幕尺寸的布局。所有这些以及更多内容都在在线文档here中进行了解释。
答案 1 :(得分:1)
如果您询问如何使应用调整到设备分辨率,则应使用下面的代码阅读屏幕分辨率,并根据需要填写空间。
Display display = getWindowManager().getDefaultDisplay();
Point size = new Point();
display.getSize(size);
int width = size.x;
int height = size.y;
由于有1000种不同的Android设备,您无法使用一行代码自动为您执行此操作。
如果您正在谈论改变屏幕分辨率,就像在PC中一样。 LCD屏幕具有原生分辨率,无法改变。但是,在PC中,显示器后面的驱动程序或硬件通过将连续像素视为单个像素来改变分辨率。此选项在高分辨率监视器中添加,以保持与旧视频卡的兼容性。在手机中,我们不需要这样做,所以没有这样的选择。当LCD显示器取代CRT时,他们需要使用不同的分辨率,如CRT,它可以在多种原生分辨率下工作。
答案 2 :(得分:-2)
public int AR(int input)
{
final float scale = getResources().getDisplayMetrics().density;
return (int) (input * scale + 0.5f);
}
其中,input是您要使用的值。 例如:
ImageView TitleImage = new ImageView(this);
TitleImage.setPadding(AR(10), AR(5), AR(2), AR(3));
现在图像填充适合所有类型的分辨率。