美文网首页
ScrollView嵌套使用ListView的解决办法

ScrollView嵌套使用ListView的解决办法

作者: 从新开始学android | 来源:发表于2018-07-26 11:36 被阅读0次

    将原生ListView替换为下方自定义的,即可解决问题,GridView同理

    /**
     * Created by wgd on 2018/6/11.
     */
    public 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);
        }
    }
    

    简单介绍一个原理:
    这种解决方法是代表,让ListView自己填充高度,那么在测量方法中,就需要在onMeasure按照测量机制传值。
    具体分析:参考博客https://www.cnblogs.com/RabbitLx/p/5858031.html

    相关文章

      网友评论

          本文标题:ScrollView嵌套使用ListView的解决办法

          本文链接:https://www.haomeiwen.com/subject/gbovmftx.html