Android显式启动与隐式启动Activity的区别介绍


为什么要写显式启动与隐式启动Activity,Android的Acitivity启动大致有两种方式:显式启动与隐式启动,下面分别介绍:

前段时间立志坚持写博客,但是发现自己的积累的确不多,于是假期泡了泡图书馆,读了一些很有价值的文章。收获颇多,今天的文章分享为主,共同学习。

为什么要写显式启动与隐式启动Activity。这源于自己的一次面试,被Baidu工程师问道,但是后来觉得自己回答的不好,废话少说,进入正题。

如题,Android的Acitivity启动大致有两种方式:显式启动与隐式启动。下面分别介绍:

A:显式启动:

对于初学者来说,这个最常见,下面用代码来解释什么是显式启动。

Intent intent=new Intent(MainActivity.this, SecondActivity.class); 
startActivity(intent);


B:隐式启动:

隐式启动不同之处在于我们并不需要像Intent(MainActivity.this, SecondActivity.class)这样传参数然后再Start另一个Activity.我们需要在intent添加过滤器intentfilter。

<activity android:name="com.example.android.tst.SecondActivity" android:label="@string/title_activity_main" >  <intent-filter>  <action android:name="com.example.android.tst.SecondActivity"/>  <category android:name="android.intent.category.DEFAULT" />  </intent-filter>  </activity>


这样,我们需要在启动另一个Activity的时候只需要如下方法就可以:

Intent intent=new Intent("com.example.android.tst.SecondActivity"); 
startActivity(intent);

通过这样一个实例会比较清晰了。
1、显示直接写你要启动哪个,一般用启动本应用中的Activity之间的数据
2、隐式根据类别 数据等匹配启动,常见于启动系统中的某些特定的动作,比如打电话.




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值