`
zengyan2012
  • 浏览: 414258 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

设置listview的高度

阅读更多
 
***注意,这里最顶层的布局必须用LinearLayout,如果用相对布局会无法显示这种效果。        
 
 public static void setListViewHeightBasedOnChildren(ListView listView) {
            ListAdapter listAdapter = listView.getAdapter(); 
            if (listAdapter == null) {
                // pre-condition
                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);
        } 
分享到:
评论

相关推荐

    ListView的嵌套,动态设置ListView的高度

    3. **设置子ListView的高度**:在测量得到高度后,可以在父ListView的`getView()`中设置子ListView的高度。例如,可以使用`LayoutParams`来修改子ListView的布局参数。 4. **处理滚动事件**:为了保证嵌套的...

    android listview 动态适应高度问题

    在默认情况下,ListView的高度会被自动设置为可以容纳所有可见项的高度,这在数据量较小或者每个项高度固定的场景下工作良好。但当我们面临以下情况时,问题就出现了: 1. 数据项数量不确定:例如,网络加载的数据...

    固定滑块高度的ListView

    "固定滑块高度的ListView"就是这样一个技术点,它涉及到Android中的自定义滚动条以及ListView的属性设置。 首先,我们需要了解Android滚动条的基本属性。在XML布局文件中,可以通过`android:scrollbars`属性来启用...

    listview与scrollview冲突问题解决

    #### 解决方案二:强制设置ListView高度 另一种解决方案是在Java代码中直接设置`ListView`的高度,通过计算每一项的高度及数量,来“撑开”`ListView`。例如: ```java LinearLayout.LayoutParams lp5 = new ...

    onMeasure简单方法 完美解决ListView与ScollView!

    1、手动设置ListView高度(比如把高度设置为200dp) 评价:特别简单无脑,但是大大提高了代码的耦合性,比较适合“图方便”的新手。 2、使用单个ListView的addHeaderView()方法(给listview设置顶部固定的一个view...

    ScrollView嵌套Listview重新测量Listview高度

    3. **设置ListView的高度**:一旦计算出总高度,就可以使用`LayoutParams`来设置ListView的高度。例如: ```java ViewGroup.LayoutParams layoutParams = listView.getLayoutParams(); layoutParams.height = ...

    解决ScrollView,ListView滚动条冲突

    2. **设置ListView高度**:如果必须使用ScrollView,可以通过编程或XML布局文件为ListView指定一个固定的高度。例如,在XML中,你可以写成`android:layout_height="wrap_content"`,然后在代码中根据实际需求动态...

    安卓listview相关相关-解决ScrollView里面嵌套ListVIew引起的高度和滚动问题.zip

    然而,当在一个ScrollView内嵌套一个ListView时,常常会遇到一些问题,比如滚动冲突、布局高度计算错误等。这个问题是由于两个可滚动组件共存导致的,Android系统无法正确处理它们之间的交互。 首先,我们要理解...

    Listview 可自由调整行高 Vb6源码

    它的参数通常包括`hWndListView`(`ListView`控件的句柄)、`iItem`(要设置高度的项的索引)和`nHeight`(新的高度值)。 3. `LOWORD` 和 `HIWORD`:这两个宏用于从32位整数中提取低16位和高16位的数据。在处理API...

    Listview 添加 高度不相等的 gridview

    同时,为了防止整个ListView出现滚动问题,还需要在ListView的`onMeasure()`方法中手动测量和设置高度。 4. **使用LinerLayout作为GridView的容器**:通常,GridView内部会使用一个垂直的LinearLayout来管理所有的...

    高度自定义ListView

    标题中的“高度自定义ListView”指的是在C# WinForms开发中对ListView控件进行深度定制,使其能够适应更复杂的展示需求。ListView控件是Windows Forms应用程序中常用的组件,用于显示列表项,通常包括图标和文本。...

    ListView绑定数据和设置ListView无数据的时候显示TextView暂无数据

    3. **设置Adapter**:在Activity或Fragment中,实例化适配器并将其设置给ListView: ```java List&lt;Item&gt; itemList = new ArrayList(); ItemAdapter adapter = new ItemAdapter(this, itemList); ListView ...

    listView嵌套listView

    - 在父Adapter的`getView()`方法中,需要实例化子ListView并设置其Adapter。 3. **性能优化** - 使用`ViewHolder`模式:这是处理ListView性能的关键。通过缓存视图对象,避免频繁的findViewById操作,提高列表...

    自动计算高度的listview和gridview

    最后,将总高度设置给`ListView`或`GridView`,并调用`requestLayout()`使其重新布局。 `ExpandListView`和`GridView`在处理可折叠/展开的子项时,还需要额外考虑展开状态下的高度计算。当一个子项被展开时,它的...

    ListView 表格动态设置控件宽度 代码法

    本教程将详细介绍如何通过代码来实现ListView表格动态设置控件宽度。 首先,我们需要理解ListView的基本结构。ListView是由多个ListView项(ListView Item)组成的,每个项通常对应一个View或者一个自定义的...

    ScrollView嵌套ListView及ListView嵌套的高度计算方法

    在上面的代码中,我们首先获取 ListView 的 Adapter,然后遍历 Adapter 中的所有子项,对每个子项进行测量,计算其高度,然后将所有子项的高度相加,最后将计算出的高度设置为 ListView 的 LayoutParams。...

    listview内容超出屏幕高度,自动显示回到listview顶部的按钮

    当ListView的内容高度超过屏幕显示范围时,用户可能需要滚动才能查看所有内容。为了方便用户快速回到列表顶部,通常会添加一个“返回顶部”的按钮。本文将详细讲解如何实现这一功能。 首先,我们需要在布局文件中为...

    PopupWindow嵌套ListView

    首先,`PopupWindow`的基本用法包括设置内容视图、宽度和高度、背景透明度以及是否允许触摸外部关闭。为了在`PopupWindow`中嵌套`ListView`,我们需要先创建一个布局文件,该布局文件包含一个`ListView`。`ListView`...

    listView嵌入listView

    1. **动态测量高度**:在创建内部ListView时,需要先测量每个子项的高度,然后将所有子项的高度累加,作为内部ListView的高度返回给外部ListView。这通常需要在Adapter的getView()方法中进行。 2. **使用...

Global site tag (gtag.js) - Google Analytics