scrollview嵌套listview澳化,我自己遇到了兩個(gè)問題屈雄。
- listview顯示不全猎荠,這個(gè)時(shí)候需要自定義一個(gè)listview粪滤,單獨(dú)計(jì)算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);
}}
- 頁面展示的時(shí)候,listview一出現(xiàn)杖小,就會(huì)直接滑動(dòng)到頁面的底部肆汹。有兩種情況,第一種是listview一開始就展示予权,第二種是listview沒有展示昂勉,滑動(dòng)了之后才去展示。但是只要listview第一個(gè)條目出現(xiàn)扫腺,就會(huì)自動(dòng)滑動(dòng)到底部硼啤。
我自己的解決方法,是要其他的view獲取焦點(diǎn)斧账。
title.tv_title.setFocusable(true);
title.tv_title.setFocusableInTouchMode(true);
title.tv_title.requestFocus();