在android开发中,经常会碰到在ScrollView中嵌套ListView的界面的开发,在ScrollView中嵌套ListView会带来几个问题,经过反复的实践,总结出完美解决的办法如下:
1.继承ListView 复写其中的方法
@Override
public void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
//实现listview在scrollview中动
int expandSpec = MeasureSpec.makeMeasureSpec(Integer.MAX_VALUE >> 2, MeasureSpec.AT_MOST);
System.out.println("expandSpec = " + expandSpec);
super.onMeasure(widthMeasureSpec, expandSpec);
}
2.在界面初始化或者数据加载完毕时让ScrollView滚动到顶部:
ScrollView sv = (ScrollView) findViewById(R.id.main_scrollview);
sv.smoothScrollTo(0, 0);