【发布时间】:2018-11-19 15:19:31
【问题描述】:
我正在 Android Studio 上开发一个项目。我在 kotlin 文件(MainActivity.kt)中有主要活动,我试图通过 Intent 对象从 java 文件(dists.java)中调用静态方法(start_netClient()),方法是将此侦听器放在我的bbutton 在 MainActivity 的 onCreate() 中:
bbutton.setOnClickListener(object: View.OnClickListener {
override fun onClick(view: View): Unit {
// Handler code here.
val intent = Intent(this, Net_Activity::class.java)
startActivity(intent)
}
})
Net_Activity 及其内容:
class Net_Activity: AppCompatActivity() {
fun main(args: Array<String>) {
dists.start_netClient()
}
}
我在构建过程中得到的代码是 MainActivity.kt 上 Intent 上的这个错误:
Error:(65, 30) None of the following functions can be called with the arguments supplied:
public constructor Intent(p0: Context!, p1: Class<*>!) defined in android.content.Intent
public constructor Intent(p0: String!, p1: Uri!) defined in android.content.Intent
我对整个 Android 事物都比较陌生,但我缺少什么,如何通过 Intent 连接 java 方法和 kotlin 类?是尽量使用两个活动还是有不同的方法?
【问题讨论】:
-
你想在
Net_Activity中完成什么?为什么会有main(args: Array<String>)这个功能? -
我正在尝试从 dists 类调用 start_netClient() 方法,这是一个 java 类。
-
嗯,你确定这就是
Net_Activity中的所有内容吗? -
我在 Activity 声明上方有导入,我已将其插入到 AndroidManifest 中,但一切都很清楚。我应该在其中包含与 Intent 构造错误匹配的内容吗?
标签: java android android-studio kotlin