You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

新建Empty Compose Activity项目无法导入Navigation问题求助

解决Jetpack Compose中Navigation的"Unresolved reference: navigation"错误

问题概述

使用Empty Compose Activity模板创建项目后,在MainActivity.kt中导入Navigation相关代码时出现"Unresolved reference: navigation"错误,同时代码中存在拼写问题引发的额外报错。

具体解决步骤

1. 修正代码拼写错误

在ScreenMain函数中,remeberNavController存在拼写错误,正确的函数名是rememberNavController:

@Composable
fun ScreenMain(){
    val navController=rememberNavController() // 修正拼写错误
}

2. 确保依赖版本兼容并同步项目

你的项目使用的Compose Compiler版本为1.2.0,当前配置的navigation-compose:2.5.3版本与之兼容,但需确保依赖已正确同步:

  • 确认build.gradle中的依赖声明无误:
    implementation "androidx.navigation:navigation-compose:2.5.3"
    
  • 点击Android Studio右上角的Sync Project with Gradle Files按钮,完成项目同步。

如果后续升级Compose相关版本,需保证Navigation Compose版本与之匹配,比如使用Compose Compiler 1.4.3时,可对应升级Navigation Compose到2.7.7。

3. 清理缓存并重启IDE

若同步后仍有报错,执行以下操作清除缓存:

  • 点击菜单File > Invalidate Caches...,选择Invalidate and Restart,重启Android Studio。
  • 可通过File > Project Structure > Dependencies查看依赖树,排查是否存在依赖冲突。

4. 确认导入语句正确性

确保Navigation相关的导入语句无错误:

import androidx.navigation.compose.rememberNavController

修正后的完整MainActivity.kt示例

package com.example.formsapp

import android.os.Bundle
import androidx.activity.ComponentActivity
import androidx.activity.compose.setContent
import androidx.compose.foundation.layout.fillMaxSize
import androidx.compose.material.MaterialTheme
import androidx.compose.material.Surface
import androidx.compose.material.Text
import androidx.compose.runtime.Composable
import androidx.compose.ui.Modifier
import androidx.compose.ui.tooling.preview.Preview
import com.example.formsapp.ui.theme.FormsAppTheme
import androidx.navigation.compose.rememberNavController

class MainActivity : ComponentActivity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContent {
            FormsAppTheme {
                Surface(
                    modifier = Modifier.fillMaxSize(),
                    color = MaterialTheme.colors.background
                ) {
                    ScreenMain()
                }
            }
        }
    }
}

@Composable
fun ScreenMain(){
    val navController=rememberNavController()
}

@Composable
fun Greeting(name: String) {
    Text(text = "Hello $name!")
}

@Preview(showBackground = true)
@Composable
fun DefaultPreview() {
    FormsAppTheme {
        Greeting("Android")
    }
}

内容的提问来源于stack exchange,提问作者Pedro Octávio Cruvinel Almeida

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.30 10:00:21