【问题标题】:How to intent from a java class to a kotlin class in Android Studios如何在 Android Studios 中从 java 类到 kotlin 类
【发布时间】: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)


        }
    }

【问题讨论】:

标签: java android android-intent kotlin


【解决方案1】:

所以,我尝试使用您的类,它的工作方式应该是这样的: 如您所见,它可以使用b 并从中获取class。 (当然我没有activity_register 布局所以是红色的)

可能问题不在于 Java-Kotlin 关系,而在于其他方面。请检查您的代码/项目。我猜想还有一个变量b 会影响您的活动,但我认为在实际代码中,您的活动不会被称为b

【讨论】:

  • 我刚刚意识到我不小心删除了 gradle 中的“apply plugin: 'kotlin-android'”。它现在工作。谢谢大佬!
  • 错误往往隐藏在一个简单的地方:) 很高兴帮助
  • 我也是这样做的,但我的活动布局没有膨胀。任何帮助都是可观的。这是我第一次从 java 类调用 kotlin 活动
  • @KalpanaAneyrao,可以这样说。用您的代码发布问题。
猜你喜欢
  • 1970-01-01
  • 2020-08-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-09-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多