我在 Jetpack compose 中导航到另一个屏幕时遇到问题。我已经设置好所有内容,并仔细检查了所有内容,但是,当我按下按钮时,它应该会带到另一个屏幕。我在 logcat 中得到了一些调试信息,这表明导航确实出了问题,并且什么也不会发生。当我试图找出问题时,我发现应该代表第二个屏幕的函数被成功调用,并且当我使用函数 Log.d("Second screen") 时,它将成功地打印在日志猫中。尽管如此,任何内容都不会出现,之前的内容也不会消失。我试着用谷歌搜索它,还询问了聊天gpt,但我没有找到任何东西,聊天gpt只告诉我它应该工作正常,我应该再次检查所有内容。最后,我创建了一个新项目并将代码放入其中,认为可能是某些项目设置导致了问题,但没有任何改变。
这是我的 Main_activity。设置了导航的所有内容以及应该启动它的按钮:
class MainActivity : ComponentActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContent {
ToDoApp2Theme {
val navController = rememberNavController()
NavHost(navController = navController, startDestination = Screens.HomeScreen.route) {
composable(route = Screens.HomeScreen.route){ Greeting(navController) }
composable(route = Screens.AddScreen.route){ Add_screen(navController) }
}
Surface(
modifier = Modifier.fillMaxSize(),
color = MaterialTheme.colorScheme.background
) {
Greeting(navController)
}
}
}
}
}
@Composable
fun Greeting(navController: NavController, modifier: Modifier = Modifier) {
Box(modifier = Modifier
.width(15.dp)
.height(20.dp)
.padding(vertical = 100.dp, …Run Code Online (Sandbox Code Playgroud) android kotlin android-jetpack-navigation android-jetpack-compose