высота окна просмотра устанавливается в ноль после popBackStackImmediate () - PullRequest
0 голосов
/ 24 октября 2018

Я использую этот пользовательский класс пейджера представления.

public class WrapContentViewPager extends ViewPager {
public WrapContentViewPager(Context context) {
    super(context);
}

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

@Override
protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
    super.onMeasure(widthMeasureSpec, heightMeasureSpec);
    int height = 0;
    ProfileSectionPagerAdapter adapter = (ProfileSectionPagerAdapter) getAdapter();
    View child = adapter.getItem(getCurrentItem()).getView();
    if(child != null) {
        child.measure(widthMeasureSpec,  MeasureSpec.makeMeasureSpec(0, MeasureSpec.UNSPECIFIED));
        height = child.getMeasuredHeight();
    }
    heightMeasureSpec = MeasureSpec.makeMeasureSpec(height, MeasureSpec.EXACTLY);

    super.onMeasure(widthMeasureSpec, heightMeasureSpec);
}
}

Я переключаю другой фрагмент и затем возвращаюсь к этому фрагменту, который включает в себя viewpager- и высоту viewpager, установленную в ноль, и я вижуне элемент в этом.(Я использую представление рециркулятора внутри viewpager)

Как я могу установить высоту в соответствии со страницами viewpager после возврата из другого фрагмента с помощью popBackStackImmediate ().

Другой фрагмент также использует этот viewpager иЯ не знаю, это вызывает эту проблему.

...