微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

最后一个镜头是不知道Android中的上下文

这将是我最后一次尝试了解Android中的上下文含义,否则我将离开Android开发,因为我不明白为什么没人能给出一个好的答案.我不想从Android文档中复制粘贴,告诉我它是一个访问资源的界面.我要么接受其他问题的链接,因为我已经阅读了所有问题,否则我不会问.

正如文档所述,它是资源的接口.

一个问题
什么是背景?它是资源的接口是什么意思?

第二个问题
为什么我们一直传递这个,不是每个活动等都可以访问相同的资源吗?

第三个问题
为什么每个friggin场景都需要上下文?比如Button myButton = new Button(this);

第四个问题
关于为什么背景传递到例如listadapters?

感谢您的时间:)

解决方法:

它会帮助您将Context可视化为指向父对象的指针吗?

所以,这就是为什么在你的例子中你创建一个Button

Button myButton = new Button ( this );

按钮(和Android)需要知道它与哪个Activity相关联才能正确管理资源(正如你自己所说的那样 – 不要忘记,这对于Android来说就像你或你的用户一样多)并且比如知道什么时候触发你的onClick().如果不知道您的按钮存在于哪个上下文中,Android如何知道是否显示它? Android如何知道是否发送onClick()事件?这是因为它知道按钮的上下文.

如果您的按钮上下文与活动的Activity相同,那么它对用户可见,并且需要以不同的方式管理到不可见的对象 – 例如,可见的Activity及其资源将是最后被杀死的对象.内存不足的情况.

这与其他操作系统和图形工具包没有什么不同,它只是不同的术语.

Context是资源的接口,但是触摸屏是资源,内存是资源,cpu是资源 – 你对资源的构成过于狭隘(同样,它实际上只是语义);资源不仅仅是声音文件,图标或布局 – 还有Android管理的资源,它需要知道对象的上下文才能正确管理这些外部资源.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐