scrollview嵌套listview,我自己遇到了两个问题。
- listview显示不全,这个时候需要自定义一个listview,单独计算listview的高度。
public class MyListView extends ListView {
public MyListView(Context context) {
super(context);
setVerticalScrollBarEnabled(true);
}
public MyListView(Context context, AttributeSet attrs, int defStyle) {
super(context, attrs, defStyle);
setVerticalScrollBarEnabled(true);
}
public MyListView(Context context, AttributeSet attrs) {
super(context, attrs);
setVerticalScrollBarEnabled(true);
}
@Override
protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
int expandSpec = MeasureSpec.makeMeasureSpec(Integer.MAX_VALUE >> 2, MeasureSpec.AT_MOST);
super.onMeasure(widthMeasureSpec, expandSpec);
}}
- 页面展示的时候,listview一出现,就会直接滑动到页面的底部。有两种情况,第一种是listview一开始就展示,第二种是listview没有展示,滑动了之后才去展示。但是只要listview第一个条目出现,就会自动滑动到底部。
我自己的解决方法,是要其他的view获取焦点。
title.tv_title.setFocusable(true);
title.tv_title.setFocusableInTouchMode(true);
title.tv_title.requestFocus();