每个项目的动态 ViewPager2 高度计算

dynamic ViewPager2 height calculation for each item

我正在使用 ViewPager2 来显示 3 个适配器项目..并且每个项目都有不同的布局。因此在更改 viewpager2.

的选项卡时应调整 viwepager2 的高度

请提出 Viewpager2 的解决方案。

我用

取得了类似的成就
    private fun updatePagerHeightForChild(view: View, pager: ViewPager2) {
        view.post {
            val wMeasureSpec = View.MeasureSpec.makeMeasureSpec(view.width, View.MeasureSpec.EXACTLY)
            val hMeasureSpec = View.MeasureSpec.makeMeasureSpec(0, View.MeasureSpec.UNSPECIFIED)
            view.measure(wMeasureSpec, hMeasureSpec)
                pager.layoutParams = (pager.layoutParams).also { lp -> lp.height = view.measuredHeight }
                pager.invalidate()
            }
    }

使用以下代码段获取当前页面 view

    viewPager2.setPageTransformer { page, position ->
        updatePagerHeightForChild(page, viewPager2)
    }