如何在每行上使用TextView和Image创建LinearLayout以填充屏幕高度

时间:2013-10-24 18:30:57

标签: android listview android-linearlayout

我正在尝试在Android应用程序中实现以下布局。

enter image description here

我使用自定义列表适配器实现了此布局。但问题在于底部的空白空间。是否可以使ListView项目均匀分布以占据整个屏幕高度。

另一种方法是将LinearLayout与WeightSum一起使用。但是通过这种方法,我将如何将textView和箭头图像放在同一行中。

任何有关实现此布局并均匀分布行高的建议都将受到赞赏。

提前谢谢。

主要活动XML:

<RelativeLayout 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:background="@color/startscreen_background"
    tools:context=".StartScreen" >

    <ListView
        android:id="@+id/start_lv_menu"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:layout_alignParentTop="true"
        android:divider="@color/startscreen_listitem_divider"
        android:dividerHeight="0px" >
    </ListView>

</RelativeLayout>

列出项目布局:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical" >

        <TextView
        android:id="@+id/startscreen_tv_item"
        android:layout_width="match_parent"
        android:layout_height="@dimen/startscreen_listitem_height"
        android:gravity="center_vertical"
        android:paddingLeft="@dimen/startscreen_listitem_paddingleft"
        android:textAppearance="?android:attr/textAppearanceMedium"
        android:textColor="@color/startscreen_listitem_textcolor"
        android:textSize="@dimen/startscreen_listitem_textsize" />

    <View
        android:layout_width="match_parent"
        android:layout_height="2px"
        android:background="@color/startscreen_listitem_divider" />

</LinearLayout>

2 个答案:

答案 0 :(得分:1)

您可以在主要活动XML

中使用android:layout_height="fill_parent"
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="@color/startscreen_background"
tools:context=".StartScreen" >

    <ListView
        android:id="@+id/start_lv_menu"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:layout_alignParentTop="true"
        android:divider="@color/startscreen_listitem_divider"
        android:dividerHeight="0px" >
    </ListView>
</RelativeLayout>

答案 1 :(得分:0)

您是否尝试过将layout_height="match_parent"提供给ListView?