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

Android的Activity组件实战细节解析

2015-03-30 19:59 302 查看
对于Activity以及相关的概念,大家都很熟悉了,就不抄其他废话了,只想提醒一下以下要点:

1.Activity的生命周期函数里面的Bundle,是每个Activity唯一的,虽然官方文档给出的命名不一致,容易令人误会。当然也可以在本Activity类里面的Bundle相关函数外面,自定义一个Bundle,将所有Bundle相关函数里面的“this.Bundle = 系统函数的Bundle”,这样系统函数内部的Bundle就等于变相被用户引用了,也能方便人类理解和使用。

2.此Bundle用于本Activity内的数据存储,最典型的就是屏幕切换或者是Activity跳转,都会使用它来保存本Activity内的数据,使数据浮动在内存中,而不是在磁盘中,达到运行效率最大化的效果。

3.对于Fragment来说,由于是Activity的内部细分,所以其Bundle也是遵循同样的使用原则。

4.Intent内部也是使用了Bundle机制,所以当Intent执行跳转的时候,其内部的Bundle就相当于一个临时的数据容器,把一个组件的数据带到其他组件的数据Bundle中。通俗来说就是:两个组件都有容器,容器里面都装有数据,而Intent里面也有空的临时容器,此临时容器被用于存放数据的中介。唉,参考“两个变量交换值”的思路就可以理解透彻了……
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: