zoukankan      html  css  js  c++  java
  • scrollview中套listView的问题,记录一下。

    开发一个订单详情界面,详情界面上面要显示收货地址、订单总金额等,中间部分要一个listView,下面还有一些东西

    但是一个界面显示不全,肯定要scrollview,然后发现listView竟然只显示第一个,查了一下问题大概就是android支持这么搞,反正解决办法网上是一大堆,没有仔细研究。但是这个办法走了一个捷径。反正能满足我的需求了。

    大概布局就是 

    <LinearLayout>

    <ListView>
    </ListView>


    </LinearLayout>

    然后在setAdapter后调用下面这个办法

    大概就是统计item相加的高度,动态设置这个线性布局的高度。记录一下

    public class Utility {

    public static void setListViewHeightBasedOnChildren(ListView listView) {

    //获取ListView对应的Adapter

    ListAdapter listAdapter = listView.getAdapter(); 

    if (listAdapter == null) {

    // pre-condition

    return;

    }

    int totalHeight = 0;

    for (int i = 0, len = listAdapter.getCount(); i < len; i++) { //listAdapter.getCount()返回数据项的数目

    View listItem = listAdapter.getView(i, null, listView);

    listItem.measure(0, 0); //计算子项View 的宽高

    totalHeight += listItem.getMeasuredHeight(); //统计所有子项的总高度

    }

    ViewGroup.LayoutParams params = listView.getLayoutParams();

    params.height = totalHeight + (listView.getDividerHeight() * (listAdapter.getCount() - 1));

    //listView.getDividerHeight()获取子项间分隔符占用的高度

    //params.height最后得到整个ListView完整显示需要的高度

    listView.setLayoutParams(params);

    }

    }

  • 相关阅读:
    用户行为分析之实时数据采集
    用户行为分析之离线数据采集
    RDDs之combineByKey()
    KeyValue对RDDs
    RDD基本操作之Action
    RDDs基本操作之Transformations
    Spark学习之Scala的基础知识
    Spark学习之RDDs介绍
    查看mysql中的用户和密码
    mysql-connector-java-5.-bin.jar 下载方法
  • 原文地址:https://www.cnblogs.com/Jerseyblog/p/4122728.html
Copyright © 2011-2022 走看看