如何使用 Android 的相对布局针对不同的屏幕尺寸进行布局
How to make layout for diffrent screen sizes using Relative Layout for Android
我已经编写了整个应用程序并在相对布局中设计了所有布局,但现在我想让它兼容所有屏幕尺寸。
在大多数情况下,Android 会自动调整布局大小以适合屏幕。但是,如果你想确保元素按照你定义的方式放置,那么针对不同的屏幕尺寸使用不同的布局。可用于提供特定于大小的资源的配置限定符有 small、normal、large 和 xlarge。例如,超大屏幕的布局应该放在 layout-xlarge/ 中。 Android documentation
我建议使用 percent relative layout
它提供了以下属性,您可以使用这些属性相应地设置维度。
- layout_widthPercent
- layout_heightPercent
- layout_marginPercent
- layout_marginLeftPercent
等
尝试为 UI 个组件分配权重。像魅力一样工作,无论屏幕尺寸是多少
例子
<LinearLayout
android:weightSum="2"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<TextView
android:layout_weight="1"
android:text="1"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
<TextView
android:layout_weight="1"
android:text="1"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
</LinearLayout>
我已经编写了整个应用程序并在相对布局中设计了所有布局,但现在我想让它兼容所有屏幕尺寸。
在大多数情况下,Android 会自动调整布局大小以适合屏幕。但是,如果你想确保元素按照你定义的方式放置,那么针对不同的屏幕尺寸使用不同的布局。可用于提供特定于大小的资源的配置限定符有 small、normal、large 和 xlarge。例如,超大屏幕的布局应该放在 layout-xlarge/ 中。 Android documentation
我建议使用 percent relative layout
它提供了以下属性,您可以使用这些属性相应地设置维度。
- layout_widthPercent
- layout_heightPercent
- layout_marginPercent
- layout_marginLeftPercent
等
尝试为 UI 个组件分配权重。像魅力一样工作,无论屏幕尺寸是多少
例子
<LinearLayout
android:weightSum="2"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<TextView
android:layout_weight="1"
android:text="1"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
<TextView
android:layout_weight="1"
android:text="1"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
</LinearLayout>