android移动开发 Intent对象

intent详解

显示启动

步骤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);

猜你喜欢

转载自blog.csdn.net/qq_40916110/article/details/80085518