问题描述
- 安卓 自定义ViewPager 自适应高度
-
如题,ScrollView中嵌套了viewpager,可以上下划和左右划,viewpager中嵌套listview,滑动冲突解决了,却出现了高度不适应问题,
第一页加载正常,第二页内容比第一页少,可是高低却和第一页一样,这样就会出现大片空白区域,第三页。。。。。以此类推。。
viewpager每次加载3个页面,就只会取最大的高度赋值,我该怎么改呢,请大神们帮帮我。重写了onMeasure
@Override
protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {int height = 0; int h; for(int i = 0; i < getChildCount(); i++) { View child = getChildAt(i); h = 0; child.measure(widthMeasureSpec, MeasureSpec.makeMeasureSpec(0, MeasureSpec.UNSPECIFIED)); h = child.getMeasuredHeight(); if(h > height) height = h; } heightMeasureSpec = MeasureSpec.makeMeasureSpec(height, MeasureSpec.EXACTLY); super.onMeasure(widthMeasureSpec, heightMeasureSpec); }
解决方案
就是这样,否则它无法知道你想俺那个子页面高度设计,所以你就控制好子页面高度吧,空白就空白,你总不能让它忽高忽低吧
时间: 2024-08-01 18:53:17