【问题标题】:What is ContextWrapper in android什么是android中的ContextWrapper
【发布时间】:2021-06-27 16:03:44
【问题描述】:

我提到了这个question,但没有答案。

文档也没有说清楚。

有人能解释清楚吗?

【问题讨论】:

  • 您对文档中的哪些内容感到困惑?就我而言,这似乎很好地解释了它。
  • @HenryTwist 我无法清楚地理解文档。你能用一个简单的例子来解释一下吗?

标签: android android-context


【解决方案1】:

正如文档所述,它接收一个基本的 Context 实例,并表现为 Context 本身,只需通过基本上下文委托所有调用即可。

当您从ContextWrapper 继承并覆盖它的一些功能时,差异就出现了,例如,您可以覆盖Context.getTheme() 方法来为您的新上下文提供不同的主题。然后,ContextWrapper 的行为与基本上下文相同,只是公开了一个替代主题。

它通常在内部使用,而不是用于非系统应用程序,因此您可能永远不必处理它。


请注意,如果您查看ContextThemeWrappersource code 可以更好地了解我给出的覆盖主题的示例,它充当提供替代主题的便利类。这很好地展示了它的用例。

【讨论】:

  • 这与java中的包装类有关吗?
  • 不,Java 包装类用于包装要用作对象的原语。
猜你喜欢
  • 2019-08-14
  • 2021-08-09
  • 1970-01-01
  • 2011-09-11
  • 1970-01-01
  • 1970-01-01
  • 2018-08-21
  • 1970-01-01
  • 2016-05-22
相关资源
最近更新 更多