// private lateinit var someAdapter: SomeAdapter
recycler_view.apply {
this.layoutManager = LinearLayoutManager(context)
if (this::someAdapter.isInitialized) { // Compilation error.
this.adapter = someAdapter
}
}
可以通过this@outerclass
访问外部this
。但是,如果您没有任何其他some adapter
,您也可以省略@yourouterclass这个
,而只需使用以下代码:
if (::someAdapter.isInitialized) {
因此,鉴于以下情况,
outer
的
somevar
是指:
class Outer<T> where T : Any {
lateinit var someVar : T
inner class Inner {
fun isItInitialized() = ::someVar.isInitialized
}
}
然而,鉴于以下情况:
class Outer<T> where T : Any {
lateinit var someVar : T
inner class Inner {
lateinit var someVar : T
fun isItInitialized() = ::someVar.isInitialized // now someVar of Inner is used
}
}
问题内容: 我有这段Java代码: 我想在Kotlin中获得MainActivity对象。自动转换在处中断。 问题答案: 您可以通过使用合格的来获得对Kotlin中对象的引用。例如:
带有同伴对象的简单示例类 值测试可以通过访问,但如何从MyClass的实例访问?如果我有,那么我如何从sample访问测试?不正确....有没有办法? Java,C++,python等都有很简单的解决方案...(我将为每个有帮助的is提供代码示例),我认为kotlin会有一个比使用Java更好的解决方案。 对于在没有对象实例(如工厂)的情况下访问类属性,kotlin companion objec
我在Kotlin编程,我有日期类的扩展功能。 它在< code>onCreate中工作正常,但是在< code >异步任务中的< code>doInBackground中出现错误 我里面有这些线 < code > getCurrentDateTime()返回< code>Date类的实例,并且为< code>toString()中的参数给出了错误 也可以参数为公共开放的乐趣toString():字