如何在Kotlin的forEach上引用外部

埃里克·丹尼尔·华雷斯·吉尔

我有以下情况

someThing.forEach{
    someWidget.setOnClickListener{
        //it is an View
        //I need foreach it of someObject
    }
}

我读了这个答案,但是没有用

kotlin如何在多层应用函数中引用外部作用域

罗兰

问题是您不在this这里处理

forEach有一个参数,为简单起见,您可以忽略它,而直接使用它it不使用它与使用它是一样的_ ->...您只是将其丢弃。

因此,您的示例改为使用命名的lambda参数编写:

someThing.forEach{ some -> // 'it' was available here too, but will not be accessible from within the next setOnClickListener...
  someWidget.setOnClickListener{
    // some contains one of the someThings now and 'it' is still your View
  }
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章