ListView 不会低于线性布局中的按钮
ListView not going below the buttons in linear layout
我正在尝试获取此布局
http://i.imgur.com/5tn9M6r.png
但出于某种原因,ListView 一直被放在第三个按钮的一侧,因此离开了屏幕
<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:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
android:paddingBottom="@dimen/activity_vertical_margin" tools:context=".MainActivity"
android:weightSum="1.0">
<Button
android:layout_weight=".33"
android:layout_width="0dip"
android:layout_height="wrap_content"
android:text="Add"
android:onClick="addPerson"
android:id="@+id/add" />
<Button
android:layout_weight=".33"
android:layout_width="0dip"
android:layout_height="wrap_content"
android:text="Edit"
android:id="@+id/edit" />
<Button
android:layout_weight=".33"
android:layout_width="0dip"
android:layout_height="wrap_content"
android:text="Delete"
android:id="@+id/delete" />
您需要定义两个 LinearLayouts,一个是垂直方向(用于 3 个按钮和列表视图),另一个是水平方向(用于按钮):
<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:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
android:paddingBottom="@dimen/activity_vertical_margin" tools:context=".MainActivity"
android:weightSum="1.0"
android:orientation="vertical">
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="horizontal">
<Button
android:layout_weight=".33"
android:layout_width="0dip"
android:layout_height="wrap_content"
android:text="Add"
android:onClick="addPerson"
android:id="@+id/add" />
<Button
android:layout_weight=".33"
android:layout_width="0dip"
android:layout_height="wrap_content"
android:text="Edit"
android:id="@+id/edit" />
<Button
android:layout_weight=".33"
android:layout_width="0dip"
android:layout_height="wrap_content"
android:text="Delete"
android:id="@+id/delete" />
</LinearLayout>
<ListView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
etc...etc
/>
</LinearLayout>
使用 layout_weight 这样它就可以尽可能多地下降:
<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:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
android:weightSum="1.0"
tools:context=".MainActivity">
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="horizontal">
<Button
android:id="@+id/add"
android:layout_width="0dip"
android:layout_height="wrap_content"
android:layout_weight=".33"
android:onClick="addPerson"
android:text="Add" />
<Button
android:id="@+id/edit"
android:layout_width="0dip"
android:layout_height="wrap_content"
android:layout_weight=".33"
android:text="Edit" />
<Button
android:id="@+id/delete"
android:layout_width="0dip"
android:layout_height="wrap_content"
android:layout_weight=".33"
android:text="Delete" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1">
<ListView
android:layout_width="match_parent"
android:layout_height="match_parent" />
</LinearLayout>
我正在尝试获取此布局
http://i.imgur.com/5tn9M6r.png
但出于某种原因,ListView 一直被放在第三个按钮的一侧,因此离开了屏幕
<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:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
android:paddingBottom="@dimen/activity_vertical_margin" tools:context=".MainActivity"
android:weightSum="1.0">
<Button
android:layout_weight=".33"
android:layout_width="0dip"
android:layout_height="wrap_content"
android:text="Add"
android:onClick="addPerson"
android:id="@+id/add" />
<Button
android:layout_weight=".33"
android:layout_width="0dip"
android:layout_height="wrap_content"
android:text="Edit"
android:id="@+id/edit" />
<Button
android:layout_weight=".33"
android:layout_width="0dip"
android:layout_height="wrap_content"
android:text="Delete"
android:id="@+id/delete" />
您需要定义两个 LinearLayouts,一个是垂直方向(用于 3 个按钮和列表视图),另一个是水平方向(用于按钮):
<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:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
android:paddingBottom="@dimen/activity_vertical_margin" tools:context=".MainActivity"
android:weightSum="1.0"
android:orientation="vertical">
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="horizontal">
<Button
android:layout_weight=".33"
android:layout_width="0dip"
android:layout_height="wrap_content"
android:text="Add"
android:onClick="addPerson"
android:id="@+id/add" />
<Button
android:layout_weight=".33"
android:layout_width="0dip"
android:layout_height="wrap_content"
android:text="Edit"
android:id="@+id/edit" />
<Button
android:layout_weight=".33"
android:layout_width="0dip"
android:layout_height="wrap_content"
android:text="Delete"
android:id="@+id/delete" />
</LinearLayout>
<ListView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
etc...etc
/>
</LinearLayout>
使用 layout_weight 这样它就可以尽可能多地下降:
<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:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
android:weightSum="1.0"
tools:context=".MainActivity">
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="horizontal">
<Button
android:id="@+id/add"
android:layout_width="0dip"
android:layout_height="wrap_content"
android:layout_weight=".33"
android:onClick="addPerson"
android:text="Add" />
<Button
android:id="@+id/edit"
android:layout_width="0dip"
android:layout_height="wrap_content"
android:layout_weight=".33"
android:text="Edit" />
<Button
android:id="@+id/delete"
android:layout_width="0dip"
android:layout_height="wrap_content"
android:layout_weight=".33"
android:text="Delete" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1">
<ListView
android:layout_width="match_parent"
android:layout_height="match_parent" />
</LinearLayout>