Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/kotlin/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android Kotlin扩展函数_Android_Kotlin_Extension Function - Fatal编程技术网

Android Kotlin扩展函数

Android Kotlin扩展函数,android,kotlin,extension-function,Android,Kotlin,Extension Function,考虑到这一点: MyView.setVisibility(View.VISIBLE) 可以简化为: inline fun View.setVisible() = apply { visibility = View.VISIBLE } MyView.setVisible() 或者,如果您愿意: inline infix fun View.vis(vis: Int) = apply { visibility = vis } MyView vis View.VISIBLE 是否有任何方法可以通

考虑到这一点:

MyView.setVisibility(View.VISIBLE)
可以简化为:

inline fun View.setVisible() = apply { visibility = View.VISIBLE }

MyView.setVisible()
或者,如果您愿意:

inline infix fun View.vis(vis: Int) = apply { visibility = vis }
MyView vis View.VISIBLE
是否有任何方法可以通过这样做来实现相同的目标:

MyView.VISIBLE
“getter”修改状态似乎有点奇怪,但您可以使用:

您还可以让它返回新的可见性值或返回自身,以便您可以潜在地链接调用

val View.VISIBLE: Int
    get() {
        visibility = View.VISIBLE
        return visibility
    }

是的,您可以使用getter编写如下属性:

val View.visible: View
    get() = apply { visibility = View.VISIBLE }
使用时:

 myView.visible

但是,请记住,通常不鼓励在getter中使用具有副作用的属性(另请参见:),并且这种行为对于属性来说相当混乱。

是的,你说得对,这很奇怪。这不是一个真实的场景,只是乱搞而已。谢谢
val View.visible: View
    get() = apply { visibility = View.VISIBLE }
 myView.visible