我有这个代码可以使图像可见,但我不知道它应该如何为Kotlin编写。
我正试图在Kotlin中使用.visibility
,我不知道该给它一个值。它基于setVisibility()
。
码:
fun hacerVisibleLaFoto(v: View) {
imageView.visibility = 1;
}
我把1
放在价值点,因为那里需要一个整数值,这是我的占位符值,直到找到真正存在的东西。
在=
标志后应该怎样去使价值可见?
Android有view visibilities的静态常量。为了以编程方式更改可见性,您应该使用View.VISIBLE
,View.INVISIBLE
或View.GONE
。
在Kotlin中使用myView.visibility = myVisibility
设置可见性与在Java中使用myView.setVisibility(myVisibility)
设置可见性相同。
在你的情况下:
fun hacerVisibleLaFoto(v: View) {
imageView.visibility = View.VISIBLE
}
使用View.VISIBLE
。这是View
类中定义的常量。
fun hacerVisibleLaFoto(v: View) {
imageView.visibility = View.VISIBLE;
}
View.VISIBLE
应该在=符号之后使值可见。它在View类中具有整数常量值。您可以按ctrl +单击(Windows)或cmd +单击(Mac)进行检查。
所以它应该是这样的。
imageView.visibility = View.VISIBLE
利用Kotlin的一些语言特性,我在View
上使用这两种扩展方法,为了方便起见,用布尔值切换可见性。
fun View.showOrGone(show: Boolean) {
visibility = if(show) {
View.VISIBLE
} else {
View.GONE
}
}
fun View.showOrInvisible(show: Boolean) {
visibility = if(show) {
View.VISIBLE
} else {
View.INVISIBLE
}
}
基本用法:
imageView.showOrGone(true) //will make it visible
imageView.showOrGone(false) //will make it gone
虽然如果你正在寻找一个小的语法Kotlin糖来使你的View
可见,你可以写一个像这样的扩展函数,使其可见。
fun View.visible() {
visibility = View.Visible
}
基本用法:
imageView.visible()