显示启动
步骤1
创建intent对象,并初始化指明要启动的Activity,创建方法有以下两种;
方法一
Intent intent=new Intent(A.this,B.class);
方法二
ComponentName component=new ComponentName(A.this,B.class);
Intent intent=new Intent();
intent.setComponent(component);
A.this表示当前应用程序的上下文,B.class表示新启动的Activity所在的类。
步骤2
调用Activity启动方法启动新的Activity。如startActivityForResult(intent, RESULTCODE);
或者startActivity(intent)
;
隐式启动
表示并不需要指明要启动哪一个Activity,只需要声明一个行为,系统会自动配置。
Action用于描述要完成的动作,Category为被执行动作Action增加的附加信息。通常Action与Category结合使用,Data则用于向Action提供操作的数据。
步骤1
创建Intent对象Intent intent=new Intent();
步骤2
intent.setAction(); //设置动作属性
intent.addCategory(); //设置类别属性
intent.setData(); //设置Data属性
intent.setType(); //设置该Data所指定Uri对应的mimeType属性
步骤3
调用Activity启动方法启动新的Activity。如startActivityForResult(intent, RESULTCODE);
或者startActivity(intent)
;
Intent.ACTION_PICK
在常见的Activity Action Intent常量中,ACTION_PICK android.intent.action.PICK 是“选择数据”的意思,来简单的分享一下我知道的Intent.ACTION_PICK的一些用法:
(一)、调用图库,获取所有本地图片:
Intent imageIntent = new Intent(Intent.ACTION_GET_CONTENT);
imageIntent.setType(“image/*”);
startActivityForResult(imageIntent, PICK_CODE); //PICK_CODE是常量
(二)、调用本地联系人:
Intent intent = new Intent(Intent.ACTION_PICK);
intent.setType(ContactsContract.Contacts.CONTENT_TYPE);
startActivityForResult(intent, PICK_CONTACT);
(三)、调用音乐,获取所有本地音乐文件:
Intent audioIntent = new Intent(Intent.ACTION_GET_CONTENT);
audioIntent.setType(“audio/*”);
startActivityForResult(audioIntent, PICK_AUDIO);
(四)、调用视频,获取所有本地视频文件:
Intent videoIntent = new Intent(Intent.ACTION_GET_CONTENT);
videoIntent.setType(“video/*”);
startActivityForResult(videoIntent, PICK_VIDEO);