Как выбрать несколько изображений, используя намерения в kotlin - PullRequest
0 голосов
/ 29 февраля 2020

Я попробовал несколько кодов. Но я не мог получить правильное решение. Может кто-нибудь помочь?

Ниже приведен код:

private var context: Context? = null
var PICK_IMAGE_MULTIPLE = 1
lateinit var imagePath: String
var imagesPathList: MutableList<String> = arrayListOf()

Ответы [ 2 ]

0 голосов
/ 29 февраля 2020

Просто используйте ниже коды -

val intent = Intent();
intent.setType("image/*")
intent.putExtra(Intent.EXTRA_ALLOW_MULTIPLE, true)
intent.setAction(Intent.ACTION_GET_CONTENT)
startActivityForResult(Intent.createChooser(intent, "Pick Photos"), 101)
0 голосов
/ 29 февраля 2020

Получить Uri для каждого файла при использовании startActivityForResult из класса активности:

private fun pickImageMultiple() {
    intent = Intent(Intent.ACTION_OPEN_DOCUMENT).apply {
        addCategory(Intent.CATEGORY_OPENABLE)
        putExtra(Intent.EXTRA_ALLOW_MULTIPLE, true)
        type = "image/*"
    }
    startActivityForResult(intent, REQUEST_CODE)
}

override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) {
    super.onActivityResult(requestCode, resultCode, data)
    if (REQUEST_CODE == requestCode && Activity.RESULT_OK == resultCode) {
        // use clipData
        data?.clipData ...
    }
}

Вы можете получить пути для каждого файла из Uris с помощью getPath.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...