美文网首页
kotlin apply的坑

kotlin apply的坑

作者: 小虫虫奇遇记 | 来源:发表于2021-01-15 17:33 被阅读0次

apply里面可以调用外部对象的属性或方法!!

起因是findViewById 返回为null ,抛出异常
各种尝试无果后发现是因为在自定义View中,在某个drawable.apply中设置了id,这个id实际上是设置给View而不是drawable的,导致view的id在xml和这里的值产生冲突,所以自然findViewById返回了 null;

ViewX.java:
drawable.apply{
 id = xxx;(可能是viewX对象的方法)
}

其实在apply中设置的属性可以通过点击进入相应的类来得到其应用的对象;

作用域函数:
image.png

不使用对象标识的话,默认是应用到内部对象;如果某个属性内部对象没有,但外部对象有,则会对外部对象生效。

https://www.kotlincn.net/docs/reference/scope-functions.html

相关文章

网友评论

      本文标题:kotlin apply的坑

      本文链接:https://www.haomeiwen.com/subject/snpwaktx.html