• listview只显示一条以及高度显示不正确的问题


    //将listview放在scrollview中时只显示一条,尽量别放,违背设计初衷

    //listview未显示的时候将其生成图片会导致只显示一条view,通过下面
    public void fixListViewHeight(ListView listView) {
    // 如果没有设置数据适配器,则ListView没有子项,返回。
    ListAdapter listAdapter = listView.getAdapter();
    int totalHeight = 0;
    if (listAdapter == null) {
    return;
    }
    for (int index = 0, len = listAdapter.getCount(); index < len; index++) {
    View listViewItem = listAdapter.getView(index , null, listView);
    // 计算子项View 的宽高
    listViewItem.measure(0, 0);
    // 计算所有子项的高度和
    totalHeight += listViewItem.getMeasuredHeight();
    }

    ViewGroup.LayoutParams params = listView.getLayoutParams();
    // listView.getDividerHeight()获取子项间分隔符的高度
    // params.height设置ListView完全显示需要的高度
    params.height = totalHeight+ (listView.getDividerHeight() * (listAdapter.getCount() - 1));
    listView.setLayoutParams(params);
    }
  • 相关阅读:
    Flutter中的剪裁
    flutter设置沉浸式状态栏
    flutter设置主题色和状态栏颜色
    Flutter更改状态栏颜色
    前端基础之JavaScript
    前端基础之CSS
    前端基础之初识 HTML
    socket及其相关(续篇)
    初识socket
    面向对象及其相关
  • 原文地址:https://www.cnblogs.com/visuals/p/5136010.html
Copyright © 2020-2023  润新知