如何使Android应用程序兼容不同的屏幕分辨率?

时间:2009-12-23 09:29:08

标签: android

我们如何在不同的Android设备上调整不同屏幕的应用程序大小?

3 个答案:

答案 0 :(得分:4)

如果您希望布局在不同的分辨率屏幕上工作,则应使用dip作为单位调整大小。例如:

android:layout_marginRight="10dip"

dip代表Device Independent Pixel,在您的布局中使用这些设备意味着Android会根据运行应用程序的设备显示的内容自动调整布局。

您可以在Supporting Multiple Screens page in the Android Developer Documentation中了解这些内容。本文档还有其他一些处理不同显示的选项,但我认为使用dip可能是最简单的。

答案 1 :(得分:1)

是的,正如Dave回答的那样,使用“dip”是最好的方法。

此外,某些屏幕具有不同的高度/宽度比率,因此仅使用“下降”是不够的。 那你有2个选择。如果你总是使用像“填充父”这样的布局,比如LinearLayout,RelativeLayout等,你会很好,因为屏幕会增长。 但有时你会在某些东西上设置一个固定的高度,如果你将它部署在机器人上(例如),它会看起来很短,因为机器人的高/宽比比G1 / G2 /等更多 在这种情况下,您需要使用代码设置高度。

答案 2 :(得分:0)

使用以下代码检查logcat中的屏幕分辨率

DisplayMetrics displaymetrics = new DisplayMetrics();
        getWindowManager().getDefaultDisplay().getMetrics(displaymetrics);

        height = displaymetrics.heightPixels;
        width = displaymetrics.widthPixels;

如果屏幕尺寸显示为480x569,因此只有屏幕可能会在最后被切断。要解决此问题,您必须更改清单文件中的minSDK版本号。