【问题标题】:How can I solve this problem with the Java Intent?如何使用 Java Intent 解决这个问题?
【发布时间】:2019-09-08 15:25:39
【问题描述】:

我将一些代码从 java 转换为 Kotlin。

fun backhome(home: View) {
    val intent_home = Intent(this, MainActivity)
    startActivity(intent_home)

fun backhome(home: View) {
    val intent_home = Intent(this, MainActivity::class.java)



    startActivity(intent_home)
}

首先我尝试了第一个代码,这是 Intent 上的错误: 不能使用提供的参数调用以下函数 (上下文!,类!) (字符串!,Uri!)

在第二个版本中,class.java 出现了一个错误作为未解决的参考

build.gradle

【问题讨论】:

  • Intent(this, MainActivity::class.java),需要这样获取Java类。
  • 那是我在第二个例子中使用的,也没有用
  • Main2Activity 存在吗?在您之前的代码中,它只是 MainActivity
  • 是的,当我尝试像第二个一样编写第一个代码时,也会出现同样的问题
  • 显示你的 Gradle 模块文件。

标签: java android kotlin


【解决方案1】:

您的项目中似乎缺少 Kotlin 插件。

在您的 Build.Gradle(App level) 文件中,添加这些。

另外,在同一个文件中,将其添加到dependencies { }

dependencies {
    implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
}

在您的 Build.Gradle(Project level) 文件中,确保将这些内容写在 BuildScript 闭包中。

buildscript {
  ext.kotlin_version = '1.3.50'
  repositories {
     google()
     jcenter()
  }

 dependencies {
    classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
  }
}

同步后,清理/重建项目。希望错误会消失。

【讨论】:

  • 我像你说的那样尝试过,现在当我尝试 sinc 项目时,找不到插件(甚至 com.android.application) 错误:ID 为 'com.android.application 的插件'未找到。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2014-10-07
  • 1970-01-01
  • 2021-06-19
  • 2020-04-27
  • 2019-10-13
相关资源
最近更新 更多