我的Android应用程序中有一个多行EditText
,它位于RelativeLayout
,GridLayout
本身是RelativeLayout
的2个列的子项。每个EditText
的columnWeight为1,这导致2 RelativeLayout
每个占据屏幕的一半。每个布局的宽度设置为0dp,以使权重优先。
每个wrap_content
的高度设置为RelativeLayout
,EditTexts本身的高度也是如此。我希望EditText
的高度与RelativeLayout
线性展开,但情况似乎并非如此。相反,布局会大致扩展每一个字符的一行高度,这样8个字母的单词会导致<GridLayout
android:id="@+id/proficiencyGrid"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/featuresWrapper"
android:layout_centerHorizontal="true"
android:columnCount="2"
android:orientation="horizontal"
android:rowCount="6" >
的高度几乎翻两倍。我的直觉告诉我它与加权/宽度有关,但我在网上找不到任何东西来确认。为什么会这样?
<RelativeLayout
android:id="@+id/personalityWrapper"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_column="0"
android:layout_columnWeight="1"
android:layout_gravity="fill"
android:layout_row="4" >
...
<EditText
android:id="@+id/personalityDialog"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@id/personalitySeparator"
android:inputType="textMultiLine"
android:padding="15dp"
android:textColor="@android:color/white"
android:textSize="16sp" >
...
i
答案 0 :(得分:0)
我设法通过使用水平LinearLayouts来修复我的布局问题,而不是试图将它们全部放在GridLayout中。它没有回答我的RelativeLayouts为什么以它们的速度扩展的问题,但它确实提供了另一种选择。由于加权对于GridLayouts来说是一个相对较新的东西,我仍然相信它与布局的宽度为0dp有关,允许加权发生,但没有人证实这一点。