我有一个带有变量控制器和嵌套类A的活动。在A类内,我想访问控制器变量。头我可以这样做吗?
class MyActivity: AppCompatActivity() {
private val controller: MyController
....methods of activity...
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
controller = Controller()
// Doing stuff
}
private class MyListener internal constructor(x: Int): LocalClass.Listener {
override fun onCallOne() {
// I get an unresolved reference here
controller.method()
}
override fun onCallTwo() {}
override fun onCallThree() {}
}
}
当我从Java代码粘贴相同代码时,上述代码是通过AndroidStudio自动转换完成的,其中可从嵌套类MyListener访问控制器变量
答案 0 :(得分:1)
我找到了。 答案是我必须使MyListener类成为内部类 因此正确的声明是
private inner class MyListener internal constructor(x: Int)...