【Android学习笔记】ExpandableListView镶嵌在viewpager滑动不了或者滑动不全的问题

本文介绍了一种自定义的ExpandableListView实现方法,通过重写onMeasure()方法使ExpandableListView能够自动调整其高度以适应内容。此方法适用于希望在Android应用中使用可扩展列表并保持整洁布局的开发者。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

还是和listview一样,重写onMeasure()方法即可。

**
 * Created by kam on 16-8-4.
 */
public class AutoAdjustHeightExpendListView extends ExpandableListView {

    public AutoAdjustHeightExpendListView(Context context) {
        super(context);
    }

    public AutoAdjustHeightExpendListView(Context context, AttributeSet attrs) {
        super(context, attrs);
    }

    public AutoAdjustHeightExpendListView(Context context, AttributeSet attrs, int defStyle) {
        super(context, attrs, defStyle);
    }

    @Override
    protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
        int expandSpec = MeasureSpec.makeMeasureSpec(Integer.MAX_VALUE >> 2,
                MeasureSpec.AT_MOST);
        super.onMeasure(widthMeasureSpec, expandSpec);
    }
}