前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >码仔漫画:关于Context不得不说的细节

码仔漫画:关于Context不得不说的细节

作者头像
陈宇明
发布2020-12-16 10:47:52
3460
发布2020-12-16 10:47:52
举报
文章被收录于专栏:设计模式
本文内容由码妞整理~

Context到底是啥?

Context 本身是一个抽象类,它的实现类为 ContextImpl。

另外有子类 ContextWrapper 和 ContextThemeWrapper,这两个子类都是 Context 的代理类,主要区别是 ContextThemeWrapper 有自己的主题资源。

看图:

一个 Context 意味着一个场景,一个场景就是我们和软件进行交互的一个过程

从安卓程序的角度来看,其实一个 Activity 就是一个 Context ,一个 Service 也是一个 Context。

Context有啥作用?

有啥用?要看它能做啥,看看主要提供了哪些接口了。

还挺多的,看起来管得挺多,四大组件都管着,像个 Application 大管家。

一个app里有多少个Context?

前面说啦,一个Activity就是一个场景(Context),一个Service也是一个场景,所以,应用程序中有多少个Activity或者Service就会有多少个Context对象,也就是有多少个场景。

ContextImpl和ContextWrapper有啥区别?

看下ContextWrapper:

再看下ContextImpl:

比较下:

不同组件创建ContextImpl的方式:

总结下

这几个类的关系:

参考:

https://juejin.im/post/5c1fab7d5188254eb05fbe48

https://juejin.im/post/5865bfa1128fe10057e57c63

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2019-08-19,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 码个蛋 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档