【发布时间】:2018-02-22 06:43:27
【问题描述】:
简介/问题
我正在使用一个名为 AIDE 的移动应用程序(它是 App UI Designer 程序)在开始编程之前为我正在制作的移动应用程序创建布局。布局几乎完美。我希望 playerTwo 部分位于屏幕顶部,上下颠倒以便两个玩家都能使用它。然后我会在中间添加一个分隔线,playerOne 部分将在底部,中间有空格/分隔线。问题是,当高度设置为 Wrap Content 时,分隔线向下延伸到屏幕外,将 playerOne 部分推到屏幕外。
我需要什么
我需要分隔线不断扩大高度,直到 playerOne 部分位于屏幕底部,而 playerTwo 部分位于顶部。
我尝试过的
- 更改每个元素的行和列跨度
- 在各种元素上将布局重力更改为居中、填充、垂直填充等
- 修改分隔线的行列
- 修改分隔线的重力、边距和内边距
- 更改高度以匹配父级
截图
固定高度布局 (10 dp)
带有包装内容的布局
XML
<?xml version="1.0" encoding="utf-8"?>
<GridLayout
xmlns:android="http://schemas.android.com/apk/res/android"
columnCount="1"
android:layout_height="wrap_content"
android:layout_width="wrap_content"
rowCount="1"
android:columnCount="3"
android:layout_gravity="right"
android:orientation="horizontal"
android:rowCount="8">
<!-- Start of Player Two Section -->
<!-- Current LP -->
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceLarge"
android:text="8000 LP"
android:minWidth="100dp"
android:gravity="center"
android:rotation="180"
android:id="@+id/playerTwo_LP"
android:layout_column="1"
android:layout_row="0"
android:layout_rowSpan="2"
android:layout_gravity="fill"/>
<!-- Toolkit -->
<Button
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:text="TOOLS"
android:rotation="180"
android:id="@+id/playerTwo_toolKit"
android:layout_row="1"
android:layout_column="0"/>
<!-- Cards Tool -->
<Button
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:text="CARDS"
android:layout_row="1"
android:layout_column="2"
android:rotation="180"
android:id="@+id/playerTwo_CardLibrary"/>
<!-- Add LP -->
<Button
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:text="ADD LP"
android:layout_gravity="fill"
android:rotation="180"
android:id="@+id/playerTwo_addLP"
android:layout_row="0"
android:layout_column="0"/>
<!-- Lose LP -->
<Button
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:text="LOSE LP"
android:layout_column="2"
android:rotation="180"
android:id="@+id/playerTwo_loseLP"
android:layout_row="0"/>
<!-- Player Two Name -->
<EditText
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:ems="10"
android:layout_row="2"
android:layout_columnSpan="3"
android:layout_gravity="fill"
android:text="Seto Kaiba"
android:gravity="center"
android:id="@+id/playerTwo_name"
android:textStyle="italic"
android:rotation="180"/>
<!-- End of Player Two Section -->
<View
android:background="?android:attr/dividerVertical"
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:layout_column="0"
android:layout_columnSpan="3"
android:layout_row="3"
android:layout_rowSpan="1"
android:layout_gravity="center|fill"/>
<!-- Start of Player One Section -->
<!-- Player One Name -->
<EditText
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:ems="10"
android:layout_row="5"
android:layout_columnSpan="3"
android:layout_gravity="fill"
android:text="Yugi Muto"
android:gravity="center"
android:id="@+id/playerOne_name"
android:textStyle="italic"
android:rotation="0"/>
<!-- Current LP -->
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceLarge"
android:text="8000 LP"
android:minWidth="100dp"
android:gravity="center"
android:rotation="0"
android:id="@+id/playerOne_LP"
android:layout_column="1"
android:layout_row="6"
android:layout_rowSpan="2"
android:layout_gravity="fill"/>
<!-- Toolkit -->
<Button
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:text="TOOLS"
android:rotation="0"
android:id="@+id/playerOne_toolKit"
android:layout_row="6"
android:layout_column="0"
android:layout_gravity="center"/>
<!-- Cards Tool -->
<Button
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:text="CARDS"
android:layout_row="6"
android:layout_column="2"
android:rotation="0"
android:id="@+id/playerOne_CardLibrary"/>
<!-- Add LP -->
<Button
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:text="ADD LP"
android:layout_gravity="fill"
android:id="@+id/playerOne_addLP"
android:layout_row="7"
android:layout_column="0"/>
<!-- Lose LP -->
<Button
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:text="LOSE LP"
android:layout_column="2"
android:id="@+id/playerOne_loseLP"
android:layout_row="7"/>
<!-- End of Player One Section -->
</GridLayout>
【问题讨论】:
标签: android xml grid-layout android-gridlayout