scrollView中嵌套listview

1.在scrollView中嵌套listview.java

有不少方法。在这里记录下我以为最好的方法。ide

首先自定义一个listview,重写onMeasure以下,其余不用变。布局

@Override
    protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
        int expandSpec = MeasureSpec.makeMeasureSpec(Integer.MAX_VALUE >> 2,
                MeasureSpec.AT_MOST);
        super.onMeasure(widthMeasureSpec, expandSpec);
    }

而后listview的item应该用线性布局。spa

这样写好了之后,界面加载出来一下scrollview会默认滚动到listview的顶部。有两种解决办法code

  • 初始化时手动将scrollview滑动到顶部,scrollview.smoothScrollTo(0,0)。大部分状况下这种状况没有问题。可是若是这个页面是在一个viewpager中的话,在viewpager的滑动过程当中依然会存在上述问题。能够用下面的方法解决。
  • 在java代码中listview.setFocusable(false).注意,在xml中设置focusable="false“没用