Activity通过startActivity启动另一个Activity,并同过Intent显示或隐式的方式指定将启动的Activity,Intent创建的的两个参数一个是启动活动的上下文,一个是要启动的活动。然后就能启动特定的Acitivity。如果只有一个参数,action和category匹配即可启动另一个Acitivity。Activity要想将信息返回,可通过startActivityForResult传入请求码,启动的Activity可通过setResult把intent返回。第一个activity在通过重写onActivityResult进行处理。
1.需要注意的是,在隐式启动ac tivity时,如果没有指定category,则系统默认启动category为android.intent.category.DEFAULT的activity
所以你也必须在AndroidMenifast中对你要启动的activity显示指定<category android:name="android.intent.category.DEFAULT">
隐式启动时intent至少指定一个action,在xml文件中可以指定多个action,如果有一个action与intent指定的相同,则action匹配成功。注意action匹配时区分大小写!!
category在intent中可以不指定,但如果指定了,xml文件中必须具有所有intent指定的category,才能匹配成功。
2.附上常用的action http://blog.csdn.net/ithomer/article/details/8242471
3.除了action 和category 还有data
data由两部分组成:mimeType 和uri
android.mimeType 用于指定可以处理的数据类型,如是文本,图片,视频等
而uri组成为<scheme>://<host>:<port>/[<path>|<pathPrefix>|<pathPattern>]
android.scheme:用于指定数据的协议部分,如不指定uri将无效
android.host:用于指定数据的主机名部分,如不指定uri无效
android.port:用于指定数据的端口部分,scheme和host指定了才指定
android.path:用于指定数据的主机名和端口之后的部分
举例:http://www.baidu.com:88/search/info(自行对照)-> uri
data匹配规则是都匹配才能匹配成功