java - 为什么在横向,线性布局中,按钮向下,我只看到一个空白屏幕?
问题描述
我有一个问题,当我旋转手机时,屏幕是空白的,我只能看到应用程序的标题。在横向模式下,一些按钮位于屏幕下方,我不知道如何解决这个问题。我正在使用一种线性布局,里面有两个线性布局。
我试图移动按钮,但我无法移动它们。
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context=".QuizActivity">
<TextView
android:id="@+id/tvQuestion"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="bottom|center_horizontal"
android:layout_marginLeft="20dp"
android:layout_marginTop="300dp"
android:layout_marginRight="20dp"
android:gravity="center"
android:padding="24dp"
android:text="@string/textview"
android:textSize="18sp" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:layout_marginLeft="20dp"
android:layout_marginRight="20dp"
android:gravity="top"
android:measureWithLargestChild="true"
android:orientation="horizontal">
<Button
android:id="@+id/btnTrue"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="@string/true_button" />
<Button
android:id="@+id/btnFalse"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="@string/false_button" />
</LinearLayout>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:orientation="horizontal">
<ImageButton
android:id="@+id/imgBtnBack"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="3dp"
android:adjustViewBounds="true"
android:maxWidth="168dp"
android:maxHeight="42dp"
android:scaleType="fitCenter"
android:src="@drawable/left_arrow" />
<ImageButton
android:id="@+id/imgBtnNext"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="3dp"
android:adjustViewBounds="true"
android:maxWidth="168dp"
android:maxHeight="42dp"
android:scaleType="fitCenter"
android:src="@drawable/right_arrow" />
</LinearLayout>
</LinearLayout>
解决方案
刚刚android:layout_marginTop="300dp"
从 textview 中删除并添加android:gravity="center"
到父 LinearLayout 中。请参阅以下布局,它也适用于横向。
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:gravity="center"
>
<TextView
android:id="@+id/tvQuestion"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="bottom|center_horizontal"
android:layout_marginLeft="20dp"
android:layout_marginRight="20dp"
android:gravity="center"
android:padding="24dp"
android:text="textview"
android:textSize="18sp" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:layout_marginLeft="20dp"
android:layout_marginRight="20dp"
android:gravity="top"
android:measureWithLargestChild="true"
android:orientation="horizontal">
<Button
android:id="@+id/btnTrue"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="true_button" />
<Button
android:id="@+id/btnFalse"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="false_button" />
</LinearLayout>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:orientation="horizontal">
<ImageButton
android:id="@+id/imgBtnBack"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="3dp"
android:adjustViewBounds="true"
android:maxWidth="168dp"
android:maxHeight="42dp"
android:scaleType="fitCenter"
android:src="left_arrow" />
<ImageButton
android:id="@+id/imgBtnNext"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="3dp"
android:adjustViewBounds="true"
android:maxWidth="168dp"
android:maxHeight="42dp"
android:scaleType="fitCenter"
android:src="right_arrow" />
</LinearLayout>
</LinearLayout>
推荐阅读
- javascript - React Data Grid 在取消过滤后不保留更改
- bash - 覆盖 cd 命令以保存 bash zsh 历史记录的绝对路径
- c# - 如何链接两个期望您提供流的 C# API?
- asn.1 - ASN.1 BER Encode Integer 0x10000000FFFFFFFC 不定长度编码
- responsive-design - 在 Google App Maker 中加入响应式设计
- python - 如何根据日期字符串输入获取月份中的天数
- elasticsearch - Elasticsearch 自定义映射定义
- slider - Foundation 6 - 滑块输入值?
- scons - SCONS env.Library() 没有得到预期的环境编译标志
- ruby-on-rails - 如何修复 ngrok 权限被拒绝?