android - 如何转换 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。
解决方案
如果它仍然为空,应该发生什么?
如果您确定在调用它时它不能为空,只需使用:
myuri!!
如果您希望它引发异常,请使用:
myuri ?: throw Exception
否则,如果您不希望发生任何事情,当它为空时,如您自己所建议的那样,请使用:
myuri?.let{...}
推荐阅读
- java - 使用 Mockk 模拟 java 静态方法时附件 ByteBuddyAgent 期间出错
- macos - 如何让 Flutter 项目在 MacOS 上运行以成功使用 Firestore?
- node.js - 如何在 Algolia Search 索引中添加数组作为属性值?
- python - 当您将模型应用于真实数据时,如何检查 ML 中的模型是否适合数据集?
- ios - 如果用户选择该选项,有没有办法可以向 UIAlertController 的 NotNow 按钮添加操作并在 24 小时后触发它?
- ssh - 可以在 SSRS 中使用 ODBC 通过 SSH 隧道连接到 MySQL 数据库吗?
- python - 用字典替换熊猫中给定列的值
- javascript - 在 JavaScript 中修改变量的函数类型是什么?
- electron - 尝试在 Whatsapp 中打开新聊天而不重新加载页面时出错
- amazon-web-services - Spark 作业失败,并从 AWS EMR 写入 S3 出现未知错误