有没有办法在 jetpack-compose 伴奏水平寻呼机上禁用右水平滚动?
Is there a way to disable right horizontal scrolling on jetpack-compose accompanist horizontal pager?
我的应用程序中有一个基本考试,用户应该给出一些答案。用户回答问题后,我想允许向水平寻呼机的右侧滑动。我的寻呼机如下所示。
pagerState = rememberPagerState()
HorizontalPager(
modifier = Modifier.fillMaxSize(),
count = questionList.size,
state = pagerState) {
QuestionComponent(questionList[it], onUserAnswered = onUserAnswered) //Full Size Question
}
在顶部,用户可以双向滑动。但是,如果用户没有回答问题,则用户不应向右滑动页面。我该如何防止这种情况?
您可以只将可用问题计数传递给寻呼机,并在回答下一个问题时增加此值。
val questions = List(10) { it.toString() }
var lastAvailableQuestion by remember { mutableStateOf(1) }
HorizontalPager(
lastAvailableQuestion
) { page ->
Text(questions[page])
Button({
// check if correct
lastAvailableQuestion += 1
}) {
Text("Check my answer")
}
if (page + 1 < lastAvailableQuestion) {
Button({
}) {
Text("Go to next question")
}
}
}
我的应用程序中有一个基本考试,用户应该给出一些答案。用户回答问题后,我想允许向水平寻呼机的右侧滑动。我的寻呼机如下所示。
pagerState = rememberPagerState()
HorizontalPager(
modifier = Modifier.fillMaxSize(),
count = questionList.size,
state = pagerState) {
QuestionComponent(questionList[it], onUserAnswered = onUserAnswered) //Full Size Question
}
在顶部,用户可以双向滑动。但是,如果用户没有回答问题,则用户不应向右滑动页面。我该如何防止这种情况?
您可以只将可用问题计数传递给寻呼机,并在回答下一个问题时增加此值。
val questions = List(10) { it.toString() }
var lastAvailableQuestion by remember { mutableStateOf(1) }
HorizontalPager(
lastAvailableQuestion
) { page ->
Text(questions[page])
Button({
// check if correct
lastAvailableQuestion += 1
}) {
Text("Check my answer")
}
if (page + 1 < lastAvailableQuestion) {
Button({
}) {
Text("Go to next question")
}
}
}