我有GridLayout的问题,我需要它是match_parent,有两列,第一列应该拉伸以填充尽可能多的空间,第二列应该是在右侧包装内容。这是我的代码:
<GridLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/playlist_basic_info"
android:columnCount="2"
android:rowCount="2"
android:orientation="horizontal">
<TextView
android:text="Název"
android:textStyle="bold"
style="?android:textAppearanceMedium" />
<TextView
android:text="Ikona"
android:textStyle="bold"
style="?android:textAppearanceMedium" />
<EditText
android:layout_gravity="fill"
android:hint="Zadejte název playlistu"/>
<ImageButton
android:src="@drawable/icon_playlist_world"/>
</GridLayout>
您可以在此处查看其外观:
答案 0 :(得分:0)
将edittext宽度设为
<EditText
android:layout_height="wrap_content"
android:layout_width="match_parent"
android:layout_weight="0.8"
android:hint="Zadejte název playlistu"/>
<ImageButton
android:src="@drawable/icon_playlist_world"
android:layout_height="wrap_content"
android:layout_width="wrap_parent"
android:layout_weight="0.2"
/>
答案 1 :(得分:0)
TableLayout似乎更容易。
使用GridLayout,您可以像这样对齐:
<GridLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/playlist_basic_info"
android:columnCount="2"
android:rowCount="2"
android:orientation="horizontal" xmlns:android="http://schemas.android.com/apk/res/android">
<EditText
android:layout_column="1"
android:layout_gravity="left|top"
android:layout_row="1"
android:ems="10"
android:hint="Zadejte název playlistu" />
<TextView
style="?android:textAppearanceMedium"
android:layout_width="wrap_content"
android:layout_column="1"
android:layout_gravity="left|top"
android:layout_row="0"
android:text="Název"
android:textStyle="bold" />
<ImageButton
android:layout_column="1"
android:layout_gravity="right|top"
android:layout_row="1"
android:src="@drawable/icon_playlist_world" />
<TextView
style="?android:textAppearanceMedium"
android:layout_column="1"
android:layout_gravity="right|top"
android:layout_row="0"
android:text="Ikona"
android:textStyle="bold" />
</GridLayout>