次のJavaコードがあります:
MaterialDialog builder = new MaterialDialog.Builder(MainActivity.this)
KotlinでMainActivityオブジェクトを取得したい。自動変換はMainActivity.this
で中断します。
修飾MainActivity
を使用して、Kotlinのthis
オブジェクトへの参照を取得できます。例えば。:
class MyActivity : MainActivity() {
val builder = MaterialDialog.Builder(this@MyActivity)
}
代わりにこれを試してください
this@ActivityName
内部クラスからActivity.thisを呼び出す場合、クラスの前にinnerを置く必要があります
class MyActivity : MainActivity() {
// Call from class itself
val builder = MaterialDialog.Builder(this@MyActivity)
inner class Inner {
this@MyActivity // Call from the inner class
}
}
MainActivtiy.thisとしてアクティビティのコンテキストを取得するためにJavaで行うように、kotlinではthis @ MainActivityとしてコンテキストを取得します