我正在尝试创建类型为 MulticastLock 的变量,这是在 Android 框架内定义的内部类。
但是,我收到一条错误消息,指出 MulticastLock 不是 WifiManager 的成员。
我是否需要在 Scala 中以不同方式引用内部类?
var multicastLock:android.net.wifi.WifiManager.MulticastLock = null
最佳答案
如果WifiManager
是一个类,那么您需要使用#
而不是.
。但请注意,这不仅仅是句法上的差异;当你有一个外部类的内部类时,它来自外部类的哪个实例可能很重要。 #
提醒您存在这个新问题(X#Y
是属于任何副本的内部类的类型,而不是特定副本;如果 x
是 X
的实例,然后 x.Y
是该特定实例的内部类的类型)。这里还有其他问题处理内部类的不同用例(例如 Referring to the type of an inner class in Scala)。
关于android - Scala 内部类 - 不是成员(member),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8791856/