【发布时间】:2022-01-22 21:50:37
【问题描述】:
在阅读MaterialDrawerKt库的源代码时,有些代码我看不懂?谁能给我解释一下?谢谢
/**
* @param imageView
* @param uri
* @param tag
* @return false if not consumed
*/
open fun setImage(imageView: ImageView, uri: Uri, tag: String?): Boolean {
// If we do not handle this protocol we keep the original behavior
return if (mHandleAllProtocols || uri.scheme in mHandledProtocols) {
imageLoader?.let {
val placeHolder = it.placeholder(imageView.context, tag)
it[imageView, uri, placeHolder] = tag
}
true
} else false
}
谁能解释一下这段代码?it[imageView, uri, placeHolder] = tag
【问题讨论】:
-
当你看到这样的括号时,它相当于用这些参数调用了一个名为
get()或set()的函数,因此代码与it.set(imageView, uri, placeholder, tag)相同 -
是的,你是对的。你解决了我的问题。谢谢
标签: java android kotlin syntax