如何让我的ListView在Android中填满整个屏幕?

时间:2017-06-08 22:37:05

标签: android listview

我在android中制作了一个listview,而我的listview并没有填满整个屏幕。它在列表视图下方有一些剩余的空白区域(可能是因为我没有足够的项目来填充屏幕)。我在网上搜索了很多解决方案,但似乎没有人能够解决这个问题。

这是我的布局:

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

 <ListView
     android:layout_width="match_parent"
     android:layout_height="match_parent"
     android:id = "@+id/customListview">

 </ListView>


</LinearLayout>

这是我的item_layout.xml:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"

    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="match_parent"
        android:id= "@+id/ItemNameSales"
        android:layout_alignParentLeft="true"
        android:text="Item Name"
        android:textAppearance="?android:attr/textAppearanceLarge"/>

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="match_parent"
        android:id= "@+id/ItemNameQty"
        android:layout_alignParentRight="true"
        android:text="Item Quantity"
        android:textAppearance="?android:attr/textAppearanceLarge"/>

</RelativeLayout>

2 个答案:

答案 0 :(得分:0)

你将不得不改变它以适应intire屏幕!!!

z-index

答案 1 :(得分:0)

您的ListView已填满整个屏幕问题是您没有列表中的enaf项目。你要做的另一件事就是创建持有者类来提供ListView松散列表顺序。你可以改变项目的高度和填充屏幕的高度,但这是编码中的不良做法

   View itemView = convertView;
    ViewHolder holder;

    if (itemView == null) {

     itemView = getLayoutInflater().inflate(R.layout.YOURVIEW,parent,false);
     holder = new ViewHolder();
     itemView.setTag( holder );
    }else {
     holder = (ViewHolder) itemView.getTag();
    }
     SalesItemInformationLV iteminfo = item.get(position);

     holder.something = (TextView)itemView.findViewById(R.id.ItemNameSales);

     public class ViewHolder{

      public TextView something;
    }