kotlin 如何根据tabRow上方的文本调整tabRow指示器的宽度?

kd3sttzy  于 2023-01-09  发布在  Kotlin
关注(0)|答案(1)|浏览(143)

我想根据上面的文字来调整表格行的指示器宽度,就像这样。但是我不知道如何用一种通用的方式来操作指示器的宽度。

预期用途:

我的代码:
TabRow(
                    // Our selected tab is our current page
                    selectedTabIndex = pagerState.currentPage,
                    modifier = Modifier
                        .fillMaxWidth(),
                    indicator = { tabPositions ->
                        TabRowDefaults.Indicator(
                            Modifier
                                .offset(0.dp, -6.dp)
                                .pagerTabIndicatorOffset(pagerState, tabPositions)
                        )
                    }
                )
我的结果:

如果你能指导我,我将很高兴。

nbnkbykc

nbnkbykc1#

不幸的是,目前还不支持文本大小换行!,但您可以复制和修改整个TabRow,或者只使用填充,如下所示:

indicator = { tabPositions ->
                TabRowDefaults.Indicator(
                    Modifier
                        .pagerTabIndicatorOffset(
                            pagerState = pagerState,
                            tabPositions = tabPositions
                        )
                         // look here
                        .padding(horizontal = 40.dp),
                    color = Color.White,
                    height = 2.dp,
                )

            }

相关问题