android Listview 与 Scrollview 共存的一个较优良的解决方法


    最近因为一个项目需要在Scrollview里面嵌套一个Listview,如果只是用android提供的ListView是什么效果大家肯定都已经知道了,经过摸索,自己找到了一个还算可以的解决方法,如下所示:

    首先时自定义一个MyListview继承Listview ,重写他的onMeasure方法 ,让它不能滚动,代码如下:

android  Listview 与 Scrollview 共存的一个较优良的解决方法

android  Listview 与 Scrollview 共存的一个较优良的解决方法


基本这样就解决了它俩共存的问题,但是新问题来了,每次加载时,都是MyListview优先显示(而且好像是从MyListview底部向上开始显示的,因为我的测试数据太少,可能说的不恰当),这显然不是我们要的结果。如何切回该视图时,依然显示切出去时的位置。


其实也比较简单 ,就是在切出去的时候记录一些当时的位置,切回来的时候调用Scrollview的smoothScrollTo(x,y)方法即可。