ACTION_CHOOSER
用来显示一个供用户选择的应用列表,例如,你要打开一个视频,但是这个设备上有多个app都可以播放视频,这时候就会出现一个列表供用户选择,一般情况下是弹出式的。示例:
Intent intent = new Intent(); intent.setAction(Intent.ACTION_SEND); intent.setType("text/plain"); Intent intent2 = new Intent(); intent2.setAction(Intent.ACTION_CHOOSER); intent2.putExtra(Intent.EXTRA_TITLE, "please selete a app"); intent2.putExtra(Intent.EXTRA_INTENT, intent); startActivity(intent2);
运行效果:
当点击某个应用的时候就会启动应用。
其实还有另外一种用法,那就是是用Intent的createChooser方法。
- ACTION_PICK_ACTIVITY
ACTION_PICK_ACTIVITY和ACTION_CHOOSER用法差不多,但是效果不同,结果也不同。还使用上面的例子,稍作修改:
Intent intent = new Intent();
intent.setAction(Intent.ACTION_SEND);
intent.setType("text/plain");
Intent intent2 = new Intent();
intent2.setAction(Intent.ACTION_PICK_ACTIVITY);
intent2.putExtra(Intent.EXTRA_TITLE, "please selete a app");
intent2.putExtra(Intent.EXTRA_INTENT, intent);
startActivity(intent2);
修改的地方为红色部分,运行效果如下:
点击以后呢,效果更不相同,chooser是点击后启动,这个是点击后不启动,那用来干什么啊??其实他是返回一个启动组件的名称。
相关推荐
通过设置Intent的ACTION_PICK或ACTION_CHOOSER,用户可以从系统提供的多个选项中选择一个行为,例如选择联系人或打开文件。 了解并熟练运用Intent的Activity转向是Android开发的基础,通过上述知识点,开发者可以...
本文将深入探讨Android中Intent的ACTION,帮助开发者更好地理解和利用这一功能。 ACTION是Intent的一个字符串常量,用于描述Intent想要执行的操作。Android系统内置了许多预定义的ACTION,比如ACTION_VIEW、ACTION_...
ACTION_PICK_ACTIVITY 是一种 Intent 动作,用于为已知的 Intent 选择一个 Activity,返回别选中的类。 18. ACTION_SEARCH:执行一次搜索。 ACTION_SEARCH 是一种 Intent 动作,用于执行一次搜索。 19. ACTION_...
17. **ACTION_PICK_ACTIVITY** - **定义**:为已知的Intent选择一个Activity,并返回选定的类。 - **用途**:在多个Activity之间进行选择时使用。 18. **ACTION_SEARCH** - **定义**:执行一次搜索操作。 - **...
Intent chooseImageIntent = new Intent(Intent.ACTION_PICK, MediaStore.Images.Media.EXTERNAL_CONTENT_URI); startActivityForResult(chooseImageIntent, REQUEST_IMAGE_CHOOSER); ``` 在`onActivityResult()`中...
Intent intent = new Intent(Intent.ACTION_PICK, MediaStore.Images.Media.EXTERNAL_CONTENT_URI); startActivityForResult(intent, REQUEST_IMAGE_CHOOSER); } ``` 在`onActivityResult()`方法中,我们需要解析...
Intent choosePictureIntent = new Intent(Intent.ACTION_PICK, MediaStore.Images.Media.EXTERNAL_CONTENT_URI); if (choosePictureIntent.resolveActivity(getPackageManager()) != null) { ...
Intent intent = new Intent(Intent.ACTION_PICK); intent.setType("image/*"); Intent cameraIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE); List<Intent> intentList = new ArrayList(); if (camera...
在Activity的`onCreate()`、`onNewIntent()`或其他生命周期方法中,可以使用`getIntent().getAction()`来获取Intent的动作。例如: ```java String action = getIntent().getAction(); if (action.equals(Intent...