ScrollView嵌套ListView listview获取焦点把ScrollView顶上去的解决办法

来源:互联网 发布:哈尔滨一块钱麻将算法 编辑:程序博客网 时间:2024/06/07 00:49

http://blog.csdn.net/zzh_receive/article/details/53176962


ScrollView嵌套ListView listview获取焦点把ScrollView顶上去的解决办法
有时候应用中需要ScrollView嵌套ListView,但是往往listView会获取焦点占满屏幕,以致于ScrollView的其他控件无法显示,解决的办法:

//重写ScrollView  @Override   protected int computeScrollDeltaToGetChildRectOnScreen(Rect rect) {   return 0;   }  

当然,ScrollView嵌套listView为了滑动正常及正确的显示,也需要重写ListView

import android.content.Context;  import android.util.AttributeSet;  import android.widget.ListView;  class ListViewForScrollView extends ListView {  public ListViewForScrollView(Context context) {        super(context);  }  public ListViewForScrollView(Context context, AttributeSet attrs) {      super(context, attrs);  }   public ListViewForScrollView(Context context, AttributeSet attrs, int defStyle) {      super(context, attrs, defStyle);  }  @Override  /**  * 重写该方法,达到使ListView适应ScrollView的效果  */  protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {      int expandSpec = MeasureSpec.makeMeasureSpec(Integer.MAX_VALUE >> 2,      MeasureSpec.AT_MOST);  
  super.onMeasure(widthMeasureSpec, expandSpec);      }  }  

原创粉丝点击