如何在横向布局中包含纵向布局?
How to include a portrait layout in a landscape layout?
我设计了完美的纵向布局。我想将 is 作为横向版本的一部分包含在内(见附件)。
没有额外的功能,所以我认为没有必要费心使用 Fragments。
当然,一个布局的纵向版本不能包含在横向版本中。以下代码会产生明显的错误 "layouts should not include itself":
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="horizontal"
>
<include
android:layout_width="wrap_content"
android:layout_height="match_parent"
layout="@layout/my_perfect_layout"
/>
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:src="@drawable/demo"
/>
</LinearLayout>
有没有办法强制布局目录,这样我就不会得到这个 include 无限循环?还是完全有另一种方法?此时我真的很想避免更改任何 java 代码!
最佳实践:
- 将您的内容布局放入无方向布局文件中。 (这是可重复使用的部分)
- 为您要使用的所有方向创建框架布局文件并包括内容布局。 (这是您放置布局特定部分的部分,例如在横向中包含更多内容)
我设计了完美的纵向布局。我想将 is 作为横向版本的一部分包含在内(见附件)。
没有额外的功能,所以我认为没有必要费心使用 Fragments。
当然,一个布局的纵向版本不能包含在横向版本中。以下代码会产生明显的错误 "layouts should not include itself":
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="horizontal"
>
<include
android:layout_width="wrap_content"
android:layout_height="match_parent"
layout="@layout/my_perfect_layout"
/>
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:src="@drawable/demo"
/>
</LinearLayout>
有没有办法强制布局目录,这样我就不会得到这个 include 无限循环?还是完全有另一种方法?此时我真的很想避免更改任何 java 代码!
最佳实践:
- 将您的内容布局放入无方向布局文件中。 (这是可重复使用的部分)
- 为您要使用的所有方向创建框架布局文件并包括内容布局。 (这是您放置布局特定部分的部分,例如在横向中包含更多内容)