Что такое createChooser, когда я должен использовать Intents? Что я могу сделать с этим методом?
Я смотрю на stackoverflow, но я не нашел определения о том, что такое "createChooser", и почему я могу использовать его и в ситуациях, доступных для использования. Полезно использовать его.
Спасибо заранее.
Ответы
Ответ 1
Например: у вас есть опция совместного доступа в приложении.
Вы определяете намерение следующим образом:
Intent picMessageIntent = new Intent(android.content.Intent.ACTION_SEND);
picMessageIntent.setType("image/jpeg");
File downloadedPic = new File(
Environment.getExternalStoragePublicDirectory(
Environment.DIRECTORY_DOWNLOADS),
"q.jpeg");
picMessageIntent.putExtra(Intent.EXTRA_STREAM, Uri.fromFile(downloadedPic));
Чем вы звоните:
startActivity(picMessageIntent);
будут указаны все приложения на вашем телефоне, способные получить это изображение.
Если вы хотите custimize заголовок этого списка, вы можете использовать createChooser следующим образом:
startActivity(Intent.createChooser(picMessageIntent, "Send your picture using:"));
![enter image description here]()
Ответ 2
Когда startActivity (намерение) вызывается в первый раз из вашего приложения, пользователь видит список всех приложений, способных справиться с этим намерением.
Существует также возможность всегда обрабатывать это намерение, используя одно из приложений из списка. Если этот параметр используется, список больше никогда не будет отображаться.
Если вы используете createChooser в своем намерении, опция "всегда использовать это приложение" не отображается. Пользователь всегда видит этот список.
Ответ 3
Этот метод используется, когда вы хотите создать пользовательское действие с использованием намерения... Также как и то, что поддерживает android ACTION_VIEW
и т.д., но здесь, когда есть несколько вариантов выполнения Action, этот выбор будет вызывать диалог, который будет иметь все доступные параметры и позволит пользователю выбрать один... здесь пример