在Android编程中,Context类到底是什么?它用于什么?
我在开发者网站上读过这篇文章,但我无法清楚地理解它。
在Android编程中,Context类到底是什么?它用于什么?
我在开发者网站上读过这篇文章,但我无法清楚地理解它。
当前回答
上下文表示获取环境数据的句柄。上下文类本身声明为抽象类,其实现由android OS提供。上下文就像电视的远程&电视中的频道是资源、服务等。
你能用它做什么?
正在加载资源。启动新活动。创建视图。正在获取系统服务。
获取上下文的方法:
getApplicationContext()获取上下文()getBaseContext()
其他回答
Android上下文是一个接口(在一般意义上,而不是在Java意义上;在Java中,上下文实际上是一个抽象类!),它允许访问特定于应用程序的资源、类以及有关应用程序环境的信息。
如果你的android应用程序是一个web应用程序,你的上下文将类似于ServletContext(我没有在这里进行精确的比较)。
您的活动和服务还扩展了Context,因此它们继承了所有这些方法来访问应用程序正在运行的环境信息。
上下文的定义
上下文表示环境数据它提供了对数据库等内容的访问
更简单的术语(示例1)
假设Person-X是一家初创软件公司的首席执行官。公司有一位首席架构师,这位首席架构师在公司内完成所有涉及数据库、UI等的工作等现在,首席执行官雇佣了一名新的开发人员。是建筑师告诉新聘人员的责任基于新人的技能数据库或UI等工作。
更简单的术语(示例2)
这就像访问应用程序资源的android活动。这与你去酒店时想吃早餐、午餐类似&在合适的时间吃饭,对吧?在逗留期间,你还喜欢其他很多东西。你是怎么得到这些东西的?你让客房服务人员为你带来这些东西。这里,客房服务人员是上下文,因为您是单一活动和酒店将成为您的应用程序,最后是早餐、午餐&晚餐必须是资源。
涉及上下文的内容包括:
正在加载资源。启动新活动。创建视图。获取系统服务。
上下文是Activity、Service、Application等的基类
描述这一点的另一种方式是:将上下文视为电视的远程&电视中的频道是资源、服务、使用意图等--这里,远程充当访问前台所有不同资源的访问权限。
因此,Remote可以访问资源、服务、使用意图等渠道。。。。同样地访问远程的人自然可以访问所有的东西,如资源、服务、使用意图等
获取上下文的不同方法
getApplicationContext()获取上下文()getBaseContext()或者这个(在活动课上)
例子:
TextView tv = new TextView(this);
关键字this指的是当前活动的上下文。
上下文表示当前。用于对当前屏幕执行操作的上下文。前任。 1. getApplicationContext() 2. 获取上下文()
Toast.makeText(getApplicationContext(), "hello", Toast.LENGTH_SHORT).show();
将其视为虚拟机孤立了应用程序或服务运行的进程。孤立的环境可以访问大量底层系统信息和某些允许的资源。您需要该上下文来获得这些服务。
此属性声明默认情况下此布局与哪个活动关联。