码迷,mamicode.com
首页 > 移动开发 > 详细

Android中ListVIew高度自适应,解决ScrollView冲突问题以及Android表格

时间:2016-05-07 08:43:42      阅读:177      评论:0      收藏:0      [点我收藏+]

标签:

效果图


技术分享


类似格式,


listView_item.xml

<?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="horizontal" >

    <TextView
        android:id="@+id/tieshu"
        android:layout_width="40dp"
        android:layout_height="wrap_content"
        android:layout_gravity="center"
        android:textColor="#000"
        android:gravity="center"
        android:textSize="12sp" />

    <View
        android:layout_width="1dp"
        android:layout_height="match_parent"
        android:background="#000" />

    <TextView
        android:id="@+id/usage"
        android:layout_width="40dp"
        android:layout_height="wrap_content"
        android:layout_gravity="center"
        android:textColor="#000"
        android:gravity="center"
        android:textSize="12sp" />

    <View
        android:layout_width="1dp"
        android:layout_height="match_parent"
        android:background="#000" />

    <TextView
        android:id="@+id/unit"
        android:layout_width="40dp"
        android:layout_height="wrap_content"
        android:gravity="center"
        android:layout_gravity="center"
        android:textColor="#000"
        android:textSize="12sp" />

    <View
        android:layout_width="1dp"
        android:layout_height="match_parent"
        android:background="#000" />

    <TextView
        android:id="@+id/drugType"
        android:layout_width="40dp"
        android:layout_height="wrap_content"
        android:layout_gravity="center"
        android:textColor="#000"
        android:gravity="center"
        android:textSize="12sp" />

    <View
        android:layout_width="1dp"
        android:layout_height="match_parent"
        android:background="#000" />

    <TextView
        android:id="@+id/count"
        android:layout_width="40dp"
        android:layout_height="wrap_content"
        android:layout_gravity="center"
        android:textColor="#000"
        android:gravity="center"
        android:textSize="12sp" />

    <View
        android:layout_width="1dp"
        android:layout_height="match_parent"
        android:background="#000" />

    <TextView
        android:id="@+id/drugName"
        android:layout_width="60dp"
        android:layout_height="wrap_content"
        android:layout_gravity="center"
        android:gravity="center"
        android:textColor="#000"
        android:textSize="12sp" />

    <View
        android:layout_width="1dp"
        android:layout_height="match_parent"
        android:background="#000" />

</LinearLayout>


ListView 高度自适应代码 :

public static void setListViewHeightBasedOnChildren(ListView listView) {
		ListAdapter listAdapter = listView.getAdapter();
		if (listAdapter == null) {return;}
		int totalHeight = 0;
		for (int i = 0; i < listAdapter.getCount(); i++) {
			View listItem = listAdapter.getView(i, null, listView);
			listItem.measure(0, 0);
			totalHeight += listItem.getMeasuredHeight();
		}
		ViewGroup.LayoutParams params = listView.getLayoutParams();
		params.height = totalHeight+ (listView.getDividerHeight() * (listAdapter.getCount() - 1));
		listView.setLayoutParams(params);
	}


冲突:

如果嵌套在ScrollView中使用 listView无法自适应的话  请在setAdapter之后在调用自适应方法。


如果大家有什么好的 实现表格方法除了recyclerview  请推荐 谢谢。。

Android中ListVIew高度自适应,解决ScrollView冲突问题以及Android表格

标签:

原文地址:http://blog.csdn.net/csdnbsd/article/details/51330081

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!