我正在使用自定义列表视图,它有6个字段,因此我使用水平滚动视图,每个字段中的权重为字段之间所需的间距。这里是Activity的代码
<HorizontalScrollView
android:id="@+id/horizontalScrollView"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_alignParentTop="true" >
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<LinearLayout
android:layout_width="match_parent"
android:layout_height="30dp"
android:background="#898ea0"
android:orientation="horizontal"
android:weightSum="11" >
<TextView
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginLeft="15dp"
android:layout_weight="2"
android:text="Name" />
<TextView
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginLeft="10dp"
android:layout_weight="2"
android:text="Site Name" />
<TextView
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginLeft="10dp"
android:layout_weight="1.5"
android:text="Plot No" />
<TextView
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginLeft="10dp"
android:layout_weight="2.3"
android:text="Booking Id" />
<TextView
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginLeft="10dp"
android:layout_weight="1.6"
android:text="Booking Date" />
<TextView
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginLeft="10dp"
android:layout_weight="1.6"
android:layout_marginRight="8dp"
android:text="Cancel Date" />
</LinearLayout>
<ListView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/cancel_booking_listView"
android:background="#163330">
</ListView>
</LinearLayout>
</HorizontalScrollView>
`
在listview行项目中,我使用具有相同权重的所有字段,但也无法在字段之间获得相等的间距。这是我的自定义行列表代码`
<LinearLayout
android:layout_width="match_parent"
android:layout_height="40dp"
android:background="#eee"
android:orientation="horizontal"
android:weightSum="11" >
<TextView
android:id="@+id/cb_custmrnameTv"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginLeft="8dp"
android:layout_weight="2"
android:text="Name" />
<TextView
android:id="@+id/cb_siteNameTv"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginLeft="10dp"
android:layout_weight="2"
android:text="Site Name" />
<TextView
android:id="@+id/cb_plotNoTv"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginLeft="10dp"
android:layout_weight="1.5"
android:text="Plot No" />
<TextView
android:id="@+id/cb_bookingIdTv"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginLeft="10dp"
android:layout_weight="2.3"
android:text="Booking Id" />
<TextView
android:id="@+id/cb_bookingDateTv"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginLeft="10dp"
android:layout_weight="1.6"
android:text="Booking Date" />
<TextView
android:id="@+id/cb_cancelDateTv"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginLeft="10dp"
android:layout_weight="1.6"
android:layout_marginRight="5dp"
android:text="Cancel Date" />
</LinearLayout>
</HorizontalScrollView>
` 为了更好地理解这里是我得到的视图的屏幕截图。你可以在这里看到每一行都有自己的间距。
我需要在所有字段之间实现相等的间距。 任何想法解决它?
答案 0 :(得分:0)
尝试使用
android:layout_width="match_parent"
TextView字段中的。 此外,您可能需要使用表格布局以获得适当的间距。
答案 1 :(得分:0)
我通过使用listview的自定义标题视图解决了这个问题,该视图具有与自定义行列表相同数量的字段和权重,并从主布局中删除了字段。 我的Cusotmer rowlist_header视图是:`
<HorizontalScrollView
android:id="@+id/horizontalScrollView"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_alignParentTop="true" >
<LinearLayout
android:layout_width="match_parent"
android:layout_height="30dp"
android:orientation="horizontal"
android:weightSum="11" >
<TextView
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginLeft="15dp"
android:layout_weight="2"
android:text="Name" />
<TextView
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginLeft="10dp"
android:layout_weight="2"
android:text="Site Name" />
<TextView
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginLeft="10dp"
android:layout_weight="1.5"
android:text="Plot No" />
<TextView
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginLeft="10dp"
android:layout_weight="2.3"
android:text="Booking Id" />
<TextView
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginLeft="10dp"
android:layout_weight="1.6"
android:text="Booking Date" />
<TextView
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginLeft="10dp"
android:layout_weight="1.6"
android:text="Cancel Date" />
</LinearLayout>
</HorizontalScrollView>
`
并将此视图添加到我的listview标题中
listView = (ListView) findViewById(R.id.cancel_booking_listView);
final View headerView = getLayoutInflater().inflate(R.layout.rowlist_header,
listView , false);
listView .addHeaderView(headerView);