Kotlin中如何将View转换为Imageview

How to convert View into Imageview in Kotlin

fun tap(view: View) {

    val img = view
 }

我希望这个变量 img 成为图像视图,但不知道如何将视图转换为图像视图。

请按以下方式尝试投射:

val img: ImageView = view as ImageView

您可以这样投射您的观点:

val img: ImageView = view as ImageView

“as”关键字将转换视图。

欢迎使用 Whosebug!!

如果您的函数中的视图可以采用多个值,在这种情况下,您可能希望首先使用以下代码检查视图是否符合预期值:-

if(view is ImageView) { //do Something}

else if(view is TextView) { //do something}

不然怎么在kotlin中投射view? 正如其他答案也提到的那样,使用 as? 关键字,如果成功,它将转换为类型,如果转换不成功,则使用 return null 如下所示,在字符串的情况下,:-

private fun castOrNull(anything: Any): String? {
return anything as? String  }

在此处查看 reference