我如何才能最准确地为 Galaxy Nexus (720x1280) 和 Nexus 4(768x1280) 设计 android 多个屏幕?
how can i design for android multiple screens most exactly for Galaxy Nexus (720x1280) and Nexus 4(768x1280)?
我正在使用密度标准开发应用程序,但是当我比较我在 Galaxy Nexus (720x1280) 和 Nexus 4 (768x1280) 屏幕上的布局时,前者很好,后者有一个白色 space在左边。
我使用 dp 缩放布局,2 布局具有相同的密度 (xhdpi)。
那么如何在相同的密度和屏幕尺寸下设计不同的布局呢?
这是创建 xhdpi 布局的示例代码,并在这 2 部手机中使用 Android Studio 预览以查看下一张图片。
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView
android:layout_width="dimx"
android:layout_height="dimy"
android:background="@android:color/black"/>
</LinearLayout>
xhdpi 文件夹中的 dimens 文件
<resources>
<!-- Default screen margins, per the Android Design guidelines. -->
<dimen name="activity_horizontal_margin">16dp</dimen>
<dimen name="activity_vertical_margin">16dp</dimen>
<dimen name="fab_margin">16dp</dimen>
<dimen name="dimx">360dp</dimen>
<dimen name="dimy">512dp</dimen>
</resources>
其他文件夹中的dimens文件
<resources>
<!-- Default screen margins, per the Android Design guidelines. -->
<dimen name="activity_horizontal_margin">16dp</dimen>
<dimen name="activity_vertical_margin">16dp</dimen>
<dimen name="fab_margin">16dp</dimen>
<dimen name="@dimen/dimx">0dp</dimen>
<dimen name="@dimen/dimy">0dp</dimen>
您的 xml 有问题 android:layout_width="@dimen/dimx"
和 android:layout_height="@dimen/dimy"
编辑: Google Nexus 和 Nexus 4 不同的屏幕宽度 并且您使用硬编码尺寸,这是主要的问题。为避免将来出现任何问题,请使用相对值而不是硬编码值,在您的情况下设置 match_parent 将解决您的问题。
希望对您有所帮助!!
我正在使用密度标准开发应用程序,但是当我比较我在 Galaxy Nexus (720x1280) 和 Nexus 4 (768x1280) 屏幕上的布局时,前者很好,后者有一个白色 space在左边。
我使用 dp 缩放布局,2 布局具有相同的密度 (xhdpi)。
那么如何在相同的密度和屏幕尺寸下设计不同的布局呢?
这是创建 xhdpi 布局的示例代码,并在这 2 部手机中使用 Android Studio 预览以查看下一张图片。
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView
android:layout_width="dimx"
android:layout_height="dimy"
android:background="@android:color/black"/>
</LinearLayout>
xhdpi 文件夹中的 dimens 文件
<resources>
<!-- Default screen margins, per the Android Design guidelines. -->
<dimen name="activity_horizontal_margin">16dp</dimen>
<dimen name="activity_vertical_margin">16dp</dimen>
<dimen name="fab_margin">16dp</dimen>
<dimen name="dimx">360dp</dimen>
<dimen name="dimy">512dp</dimen>
</resources>
其他文件夹中的dimens文件
<resources>
<!-- Default screen margins, per the Android Design guidelines. -->
<dimen name="activity_horizontal_margin">16dp</dimen>
<dimen name="activity_vertical_margin">16dp</dimen>
<dimen name="fab_margin">16dp</dimen>
<dimen name="@dimen/dimx">0dp</dimen>
<dimen name="@dimen/dimy">0dp</dimen>
您的 xml 有问题 android:layout_width="@dimen/dimx"
和 android:layout_height="@dimen/dimy"
编辑: Google Nexus 和 Nexus 4 不同的屏幕宽度 并且您使用硬编码尺寸,这是主要的问题。为避免将来出现任何问题,请使用相对值而不是硬编码值,在您的情况下设置 match_parent 将解决您的问题。
希望对您有所帮助!!