`
wang_peng1
  • 浏览: 3954712 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

listView 包含在scrollView问题

 
阅读更多

listView是不能包含在scrollView中,会出现一些故障,有时候就是不能完全展示 有时候就是程序崩溃

public class Utility {
    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);
    }
}

Utility.setListViewHeightBasedOnChildren(myListView);
 虽然这样可以避免不能扩展问题,但是到了最后一个item就会崩溃,如果有更好的办法可以解决listView扩展问题 可以留言

分享到:
评论

相关推荐

    水平 横线 listView 嵌套在 ScrollView中 已经处理滑动问题

    在Android开发中,有时我们需要创建一个布局,其中包含一个可以滚动的垂直视图(如ScrollView)和一个可横向滑动的列表(如HorizontalListView)。这样的布局设计可以为用户提供丰富的交互体验,但同时也带来了一些...

    解决listview潜逃在scrollview中的滑动冲突

    当一个ScrollView包含一个可以滚动的子视图(如ListView),用户在触摸屏幕滑动时,事件会依次传递给ScrollView和ListView。由于ScrollView自身已经处理了滑动事件,导致ListView无法正确接收到滑动事件,从而不能...

    listview在scrollview中完整显示

    然而,当它被嵌套在ScrollView中时,通常会出现一些问题,比如滚动冲突或者ListView无法完整显示。这是因为ScrollView本身就是一个可滚动的视图,而ListView也是可滚动的,两者结合可能会导致滚动行为不正常。本篇...

    Android中自定义ListView,解决scrollview嵌套listview 滑动事件冲突

    在Android开发中,ListView是用于显示大量数据列表的常用组件,而ScrollView则是一个可以垂直滚动的视图容器,常用于包含多个子视图。当在一个ScrollView内嵌套一个ListView时,由于两者都具有滑动功能,可能会导致...

    解决scrollView和listview滚动冲突,实现listview滑动到顶端和底部之后还能拖拽一定的距离,松开后返回

    ScrollView是一个可以包含单个子视图的可滚动容器,而ListView则是通过Adapter来动态加载和展示数据的列表。默认情况下,当两者在同一层级时,触摸事件会被ScrollView捕获,导致ListView无法正常滚动。为了解决这个...

    Listview与Scrollview冲突的问题

    然而,当在一个布局中同时使用ListView和ScrollView时,往往会出现冲突问题,导致滚动不顺畅或者只有一方能正常工作。这个问题对于开发者来说是一项挑战,需要深入理解这两种组件的工作原理才能妥善解决。 ListView...

    ScrollView中嵌套ScrollView或ListView并且内部ScrollView或ListView也可滑动.

    当在ScrollView中嵌套另一个ScrollView或者ListView时,可以实现更复杂的滚动交互,例如在一个长列表中展示可滚动的子区域。这种设计模式在很多场景下都非常实用,比如在详情页面中既有整体的上下滚动,又有局部的...

    scrollview与listview,viewpager共存

    在ScrollView中嵌套ListView会导致性能问题,因为ScrollView会尝试管理其所有子视图的滚动,而ListView已经在处理自己的滚动逻辑。 然后是ViewPager。ViewPager允许用户在多个页面之间水平滑动,常用于实现Tab切换...

    ScrollView中自定义ListView

    然而,系统默认的ListView是不建议直接嵌套在ScrollView内的,因为两者都有滚动功能,这可能导致冲突和性能问题。为了克服这个问题,开发者常常需要自定义ListView来适应ScrollView的环境。 首先,我们要理解为什么...

    android完美解决listView与ScrollView滑动冲突

    4. **使用 FLAG_DISMISS_DECELERATION**:通过设置Window的FLAG_DISMISS_DECELERATION标志,可以让ScrollView在滑动结束后快速停止,从而减少冲突。但这可能会影响到ScrollView的滚动体验。 5. **使用 ...

    解决ScrollView嵌套ListView Demo

    在Android开发中,ScrollView和ListView是两种常用的布局组件。ScrollView是一个可以滚动的视图容器,它允许其内容超出屏幕大小。而ListView则用于显示一列可滚动的项目,通常用于展示大量的数据。当在一个布局中...

    解决ListView 和 ScrollView 共存冲突的问题

    如果需求是让ListView的部分内容可以滚动,可以考虑自定义ListView的项视图,使其包含一个ScrollView。这样,只有需要滚动的部分会响应滚动事件,而不是整个ListView。 4. **使用RecycleView**: 从Android ...

    解决Scrollview嵌套listview下拉刷新的一些问题

    当在一个ScrollView中嵌套一个ListView时,可能会遇到一些特定的问题,尤其是在实现下拉刷新功能时。本文将深入探讨这些问题及其解决方案。 ### 问题1:滑动冲突 由于ScrollView和ListView都具有滚动功能,它们之间...

    解决Android中ListView和ScrollView嵌套冲突

    这种冲突主要体现在ListView无法正确地展示其内容,因为ScrollView会尝试将所有子视图(包括ListView)都放入屏幕可见范围内,导致ListView的滚动功能失效。 为了解决这个问题,我们需要理解Android布局的工作原理...

    ScrollView不冲突嵌套ListView

    然而,直接在ScrollView内嵌套ListView时,可能会出现一些问题,比如滚动冲突,导致用户体验不佳。本篇文章将深入探讨如何解决ScrollView与ListView的嵌套问题,并通过自定义ListView来实现正常显示每个Item,确保...

    Android ScrollView嵌套ListView嵌套GridView的上下拉以及加载更多

    最后,关于`ScrollView_GridView_listViewRefresh_Demo`这个示例项目,它很可能是包含了一个实际运行的代码实例,演示了如何在ScrollView中嵌套ListView和GridView,并实现了上下拉刷新和加载更多功能。通过查看和...

    ScrollView嵌套ListVIew两者之间滑动问题

    然而,当在一个ScrollView中嵌套一个ListView时,就会出现一些特殊的问题,主要是关于滑动事件的处理,即所谓的“滑动冲突”。 首先,我们要理解滑动冲突的本质。当ScrollView和ListView同时存在于同一个布局中,...

    Android解决ScrollView和ListView冲突问题Demo

    而ListView本身已经具备了滚动功能,当它被包含在ScrollView中时,两个组件的滚动行为就会相互干扰,导致用户体验下降,比如只滚动了一个组件,另一个不滚动,或者滚动变得不流畅。 为了解决这个问题,我们可以采取...

    解决listview和scrollview冲突

    当ListView被包含在ScrollView中时,由于ScrollView并不了解ListView的复用机制,它会尝试处理整个ListView的滚动,这就会导致滚动体验变得混乱,有时甚至完全失效。 解决这个问题的一种常见方法是自定义一个继承自...

    Node.js-scrollView包含listview解决listview数据加载不出来的问题

    因为ScrollView会尝试去加载所有子视图,包括ListView中的所有item,这与ListView的优化机制相冲突,可能导致以下问题: 1. 数据加载缓慢:由于ScrollView试图一次性加载所有ListView item,导致大量数据一次性加载...

Global site tag (gtag.js) - Google Analytics