2016-05-06 78 views
0

我有一个listview与权重总和4.包括图像后,我有大填充,但我清除所有边距和填充。所有数据通过MainActivity的适配器接收。 下面有屏幕快照和代码。感谢您的收看和帮助。listview项目之间的巨大距离

enter image description here

<TextView 
     android:layout_width="0dp" 
     android:layout_height="match_parent" 
     android:textAppearance="?android:attr/textAppearanceSmall" 
     android:text="Пн, сегодня" 
     android:id="@+id/title" 
     android:layout_weight="1" 
     android:layout_gravity="center_vertical" 
     android:gravity="center" /> 

    <ImageView 
     android:layout_width="0dp" 
     android:layout_height="match_parent" 
     android:id="@+id/icon" 
     android:layout_weight="1" 
     android:src="@drawable/ic_cloud_queue_24dp" 
     android:layout_gravity="center_vertical" /> 

    <TextView 
     android:layout_width="0dp" 
     android:layout_height="match_parent" 
     android:textAppearance="?android:attr/textAppearanceSmall" 
     android:text="+17" 
     android:id="@+id/genre" 
     android:layout_weight="1" 
     android:gravity="center" 
     android:layout_gravity="center_vertical" /> 

    <TextView 
     android:layout_width="0dp" 
     android:layout_height="match_parent" 
     android:textAppearance="?android:attr/textAppearanceSmall" 
     android:text="+9" 
     android:id="@+id/year" 
     android:layout_weight="1" 
     android:gravity="center" 
     android:layout_gravity="center_vertical" /> 

</LinearLayout> 
+1

发布完整的XML代码。也发布XML包含“列表视图”。 –

+0

检查我的答案并使用此代码。让我知道你是否面临问题。并确保你在上面的问题中发布你的代码。 –

回答

1

尝试使用此代码。

变化我已与match_parent作为高度和宽度添加Linear Layout内部Relative Layout。因为包含match_parent作为高度的线性布局子元素会影响列表项。这就是为什么我添加了新的根布局并将所有孩子定义为OP。

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent"> 

    <LinearLayout 
     android:id="@+id/ll1" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:orientation="horizontal" 
     android:weightSum="4"> 

     <TextView 
      android:id="@+id/title" 
      android:layout_width="0dp" 
      android:layout_height="match_parent" 
      android:layout_gravity="center_vertical" 
      android:layout_weight="1" 
      android:gravity="center" 
      android:text="Пн, сегодня" 
      android:textAppearance="?android:attr/textAppearanceSmall" /> 

     <ImageView 
      android:id="@+id/icon" 
      android:layout_width="0dp" 
      android:layout_height="match_parent" 
      android:layout_gravity="center_vertical" 
      android:layout_weight="1" 
      android:src="@drawable/ic_dashboard" /> 

     <TextView 
      android:id="@+id/genre" 
      android:layout_width="0dp" 
      android:layout_height="match_parent" 
      android:layout_gravity="center_vertical" 
      android:layout_weight="1" 
      android:gravity="center" 
      android:text="+17" 
      android:textAppearance="?android:attr/textAppearanceSmall" /> 

     <TextView 
      android:id="@+id/year" 
      android:layout_width="0dp" 
      android:layout_height="match_parent" 
      android:layout_gravity="center_vertical" 
      android:layout_weight="1" 
      android:gravity="center" 
      android:text="+9" 
      android:textAppearance="?android:attr/textAppearanceSmall" /> 

    </LinearLayout> 

</RelativeLayout> 
+0

是的,它的工作原理,谢谢你。这是我的代码,但我不能插入这部分。 –

+0

@Downvoter拍你的投票原因?他的问题解决了人! –

+0

@jaydroider。虽然这个解决方案可能会起作用,但是**试试这个代码** - 答案通常不是很好的答案。这可能会帮助提问者解决他的具体问题,但它并没有告诉提问者什么。良好的答案也解释了为什么提问者的方法不起作用,也解释了为什么提出的解决方案能够正常工作 –

0

LinearLayout的四个要素是具有高度wrap_content这基本上意味着,使其高度的孩子们。但是,所有4名儿童的身高都是match_parent,这说明我们的父母适合。所以这不是很兼容。我要做的是要么给所有4个孩子的高度wrap_content也要给LinearLayout一个固定的layout_height