这篇文章将为大家详细讲解有关Android中Activity有哪些常用的属性,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。
在织金等地区,都构建了全面的区域性战略布局,加强发展的系统性、市场前瞻性、产品创新能力,以专注、极致的服务理念,为客户提供成都做网站、网站建设、外贸营销网站建设 网站设计制作按需定制,公司网站建设,企业网站建设,品牌网站设计,全网营销推广,成都外贸网站建设,织金网站建设费用合理。个人理解
1>Activity launchMode设置不为standard,在跳转Activity时,如果新的Activity不再创建新的实例(不执行onCreate) 会调用onNewIntent方法。 (正常生命周期情况不会调用onNewIntent())
2>Activity launchMode singleInstance实用场景—>关于浏览器的LaunchMode为singleTask,所以如果当你点击一个连接下载文件时(由一个activity来处理下载,launchmode为standard),如果再次进入浏览器,那么下载页面就被Destory了,那么这里我们可以把下载页面LaunchMode设置为singleInstance可以解决这个问题.(即:在使用singleTask的情况下 不想关闭的界面可单独新起一个task)
3>taskAffinty对lanuchMode的影响 :
当LanuchMode设置为 standard 和singTop,即使 taskAffinty不同,也不会新起Task.
当LanuchMode设置为 singleTask ,以A启动B来说
1、当A和B的taskAffinity相同时:第一次创建B的实例时,并不会启动新的task,而是直接将B添加到A所在的task;当B的实例已经存在时,将B所在task中位于B之上的全部Activity都删除,B就成为栈顶元素,实现跳转到B的功能。 2、当A和B的taskAffinity不同时:第一次创建B的实例时,会启动新的task,然后将B添加到新建的task中;当B的实例引进存在,将B所在task中位于B之上的全部Activity都删除,B就成为栈顶元素(也是root Activity),实现跳转到B的功能。
当LanuchMode设置为singleInstance
当第一次创建该Activity实例时,会新建一个task,并将该Activity添加到该task中。注意:该task只能容纳该Activity实例,不会再添加其他的Activity实例!如果该Activity实例已经存在于某个task,则直接跳转到该task。
4>allowTaskReparenting 这个属性用来标记一个Activity实例在当前应用退居后台后,是否能从启动它的那个task移动到有共同affinity的task,“true”表示可以移动,“false”表示它必须呆在当前应用的task中,默认值为false。
5>clearTaskOnLaunch
程序回到home界面后,再次点击程序图标的效果。影响的是activity的生命周期。
简单的:
activity A(clearTaskOnLaunch设置为true)(为主界面)
activity B
程序启动A,在启动B。再点击HOME键回到桌面,再点击程序图标,效果是B执行onrestart,B执行ondestory。A界面显示。(如果clearTaskOnLaunch没设置,则是显示B界面)
稍微复杂点的:
activity A(clearTaskOnLaunch设置为true),B(clearTaskOnLaunch设置为true),C
依次启动A,B,C,点击HOME,再在桌面点击图标。启动的是A(执行onrestart),B、C执行(ondestory)。
也就是说,优先启动第一个(A)已注册clearTaskOnLaunch为true的Activity,其余的后启动的activity(B、C)都销毁,除非前面A已经finish销毁,后面的已注册clearTaskOnLaunch为true的activity才会生效。
关于Android中Activity有哪些常用的属性就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。
另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。