您的位置:首页 > 移动开发 > Android开发

android-Intent启动activity的几种方式-隐式Intent

2013-03-08 09:40 591 查看
1. Intentintent
=new Intent(AActivity
.
this
,BActivity.
class
);//激活组件,显示意图:明确指定了组件名称的意图叫显示意图
Intent intent = new Intent();

2. intent.setClass(AActivity
.
this
,BActivity.
class
);//指定要激活的组件名称
3. intent.setClassName(AActivity
.
this
,
"cn.wxxu.activitys.BActivity");
4. intent.setComponent(new ComponentName(AActivity
.
this
,BActivity.class));

1.class跳转,应用场景:常用于应用内部跳转

Intent intent = new Intent(AActivity.this,BActivity.class);//激活组件,显示意图:明确指定了组件名称的意图叫显示意图
Intent intent = new Intent();
intent.setClass(AActivity.this,BActivity.class);//指定要激活的组件名称


2.包名 类名跳转,应用场景:内部跳转+外部跳转

3. intent.setClassName(AActivity.this, "cn.wxxu.activitys.BActivity");


3.componentName跳转,应用场景:内部跳转+外部跳转

intent.setComponent(new ComponentName(AActivity.this, BActivity.class));


intent.setComponent(new ComponentName(AActivity.this, cn.wxxu.activitys.BActivity.class));//包名和类名


4.隐式跳转

没有明确指定组件名的Intent为隐式意图。 Android系统会根据隐式意图中设置的动作(action)、类别(category)、数据(URI和数据类型)找到最合适的组件来处理这个意图。
在清单文件中配置如下

<activity android:name=".OtherActivity" android:label="@string/windowtitle">
            <intent-filter >
                <action android:name="cn.wxxu.xxxx"/>
                <action android:name="cn.wxxu.yyyy"/></span>
                <category android:name="cn.wxxu.category.java"/> 
                <category android:name="android.intent.category.DEFAULT"/>
                <category android:name="cn.wxxu.category.php"/>
                <data android:scheme="wxxu" android:host="www.xxxx.cn" android:path="/liming"/>
                <data android:mimeType="image/*"/>
            </intent-filter>            
        </activity>
intent激活隐式意图

Intent intent = new Intent();//隐式意图激活Activity
    	intent.setAction("cn.wxxu.xxxx");
    	intent.addCategory("cn.wxxu.category.java");   
    	intent.setDataAndType(Uri.parse("wxxu://www.xxxx.cn/liming"), "image/jpeg");
    	
    	startActivity(intent);//方法内部为Intent添加了android.intent.category.DEFAULT类别
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: