首页 > 解决方案 > 如何转换 Uri?数据类型为 Uri

问题描述

我正在初始化 uri,以便我可以从任何地方访问它

private var myuri:Uri? = null

现在在 Oncreate 方法中

Oncreate{
   button.setOnClickListner{
   uploadfile(filename, myuri)
   }
}
fun uploadfile(filename:String, fileuri:uri){
  .
  .
  .//some code
}

有错误说

Type Mismatch required Uri found Uri?

我无法从 uploadfile 函数更改任何内容,我必须在整个 kotlin 文件中访问 myuri。

标签: androidkotlin

解决方案


如果它仍然为空,应该发生什么?

如果您确定在调用它时它不能为空,只需使用:

myuri!!

如果您希望它引发异常,请使用:

myuri ?: throw Exception

否则,如果您不希望发生任何事情,当它为空时,如您自己所建议的那样,请使用:

myuri?.let{...}

推荐阅读