【发布时间】:2021-10-13 00:13:32
【问题描述】:
我的问题是我需要一个标签指示器来完全匹配它上面的文本(来自设计):
然而,我所做的只是得到如下所示的东西:
我的代码:
ScrollableTabRow(
selectedTabIndex = selectedSeason,
backgroundColor = Color.White,
edgePadding = 0.dp,
modifier = Modifier
.padding(vertical = 24.dp)
.height(40.dp),
indicator = { tabPositions ->
TabDefaults.Indicator(
color = Color.Red,
height = 4.dp,
modifier = Modifier
.tabIndicatorOffset(tabPositions[selectedSeason])
)
}
) {
item.seasonList().forEachIndexed { index, contentItem ->
Tab(
modifier = Modifier.padding(bottom = 10.dp),
selected = index == selectedSeason,
onClick = { selectedSeason = index }
)
{
Text(
"Season " + contentItem.seasonNumber(),
color = Color.Black,
style = styles.seasonBarTextStyle(index == selectedSeason)
)
}
}
}
}
还有一个小问题,我的这个屏幕的代码在惰性列中,现在我需要让这个标签行表现得有点像一个粘性标题(当它到达顶部时,屏幕停止滚动,但我仍然可以滚动其中的项目)
感谢您的帮助
【问题讨论】:
-
我认为这回答了你的问题:stackoverflow.com/a/44026386/14759470
-
@SlothCoding 上面的答案适用于常规的 Android 视图,但不适用于 Compose
标签: android android-jetpack android-jetpack-compose