Advertisement

Android面试中的ScrollView嵌套ListView问题:显示不全

阅读量:

问题

在Markdown中,ScrollView嵌套ListView可能导致ListView仅能展示单行item的高度,无法完整呈现内容

2.原因

通过查看源码发现:

ScrollView和ListView各自的高度量都是MeasureSpec.UNSPECIFIED

@Override

protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {

super.onMeasure(widthMeasureSpec, heightMeasureSpec);

MeasureSpec自父级传递过来,在此场景下由于ScrollView指定的测高模式为Unspecified,并因此在此处的heightMode设置中设置了相应的限制条件

final int widthMode = MeasureSpec.getMode( widthMeasureSpec);

final int heightMode = MeasureSpec.getMode( heightMeasureSpec);

int widthSize = MeasureSpec.getSize( widthMeasureSpec);

int heightSize = MeasureSpec.getSize( heightMeas

全部评论 (0)

还没有任何评论哟~