如何在 Android Studios 中从 java 类到 kotlin 类
Posted
技术标签:
【中文标题】如何在 Android Studios 中从 java 类到 kotlin 类【英文标题】:How to intent from a java class to a kotlin class in Android Studios 【发布时间】:2019-01-14 04:47:23 【问题描述】:我正在尝试从 java 类 (a.java) 访问 kotlin 类 (b.kt)。
Intent intent = new Intent(a.this,b.class);
startActivity(intent);
但我收到了这个error: cannot find symbol class RegisterActivity
。
有没有办法从java
类访问kotlin
类?
这是我在 a.java 上调用 b.kt 的地方
bt_click.setOnClickListener(new View.OnClickListener()
@Override
public void onClick(View v)
Intent intent = new Intent(a.this,b.class);
startActivity(intent);
);
这是b.kt
package com.example.android.app123
import android.app.Activity
import android.os.Bundle
import android.support.v7.app.AppCompatActivity
import android.support.v7.widget.CardView
import android.util.Log
import android.widget.EditText
class b: AppCompatActivity()
override fun onCreate(savedInstanceState: Bundle?)
super.onCreate(savedInstanceState)
requestWindowFeature(android.view.Window.FEATURE_NO_TITLE)
setContentView(R.layout.activity_register)
【问题讨论】:
***.com/questions/38877952/… 它应该作为一个常规的 Java 类来访问。贴出b
类声明的代码,以及java的进一步使用
请看我的编辑。提前致谢。
【参考方案1】:
所以,我尝试使用您的类,它的工作方式应该是这样的:
如您所见,它可以使用b
并从中获取class
。 (当然我没有activity_register
布局所以是红色的)
可能问题不在于 Java-Kotlin 关系,而在于其他方面。请检查您的代码/项目。我猜想还有一个变量b
会影响您的活动,但我认为在实际代码中,您的活动不会被称为b
。
【讨论】:
我刚刚意识到我不小心删除了 gradle 中的“apply plugin: 'kotlin-android'”。它现在工作。谢谢大佬! 错误往往隐藏在一个简单的地方:) 很高兴帮助 我也是这样做的,但我的活动布局没有膨胀。任何帮助都是可观的。这是我第一次从 java 类调用 kotlin 活动 @KalpanaAneyrao,可以这样说。用您的代码发布问题。以上是关于如何在 Android Studios 中从 java 类到 kotlin 类的主要内容,如果未能解决你的问题,请参考以下文章
Android Studios - 在布局编辑器中调整 VideoView 大小
Android Studios:Android 设备管理器在文件资源管理器中未显示 Nougat 7.0 的文件
在安装liunx下的android studios出现的错误