android - android中的kotlin:删除意图的对象值,因为它只使用一次
问题描述
在 kotlin 中编程时,经常会出现这样的代码,其中需要创建一个值(galleryIntent)。
val galleryIntent = Intent(Intent.ACTION_PICK,
MediaStore.Images.Media.EXTERNAL_CONTENT_URI)
startActivityForResult(galleryIntent, GALLERY)
没有这个值有没有办法工作,比如:
Intent(Intent.ACTION_PICK,
MediaStore.Images.Media.EXTERNAL_CONTENT_URI)
.xxxx{startActivityForResult( yyy , GALLERY)}
而 xxxx 是一个类似 'apply', 'let' ... 的函数,而 yyy 是对 Intent 的引用
在我看来,代码会更具可读性。
解决方案
很好地写出迈克尔·布彻的答案:
Intent(Intent.ACTION_PICK,
MediaStore.Images.Media.EXTERNAL_CONTENT_URI)
.let{startActivityForResult( it , GALLERY)}
这对于其他想要做同样的事情的人来说;-)
推荐阅读
- java - BorderLayout 为较小的 JLabel 保留空间
- intellij-idea - JetBrains IntelliJ IDEA 删除歧管插件
- go - 将 golang 应用程序部署到 Heroku 时运行迁移
- c++ - How would I use type as a "variable"?
- javascript - AJAX/PHP - 以纯 JavaScript 分段上传大文件
- ios - UIView 和屏幕旋转上的对角渐变背景
- python - 展开嵌套的字符串列表并保存为 .txt
- visual-c++ - msbuild-bin/cl.exe 不知道 std::apply 是什么?
- java - Java Sockets:如何根据事件将多个文件从客户端发送到服务器
- selenium - Selenium 没有打开 Firefox