当前位置: 首页 > 面试题库 >

上下文或活动之外的getString

朱岳
2023-03-14
问题内容

我发现R.string将硬编码的字符串保留在我的代码之外真是太棒了,我想继续在实用程序类中使用它,该实用程序类与我的应用程序中的模型一起生成输出。例如,在这种情况下,我从活动之外的模型生成电子邮件。

是否可以getStringContext或外使用Activity?我想我可以通过当前活动,但这似乎没有必要。如果我错了,请纠正我!

编辑:我们可以 使用访问资源Context吗?


问题答案:

是的,我们无需使用“上下文”就可以访问资源

您可以使用:

Resources.getSystem().getString(android.R.string.somecommonstuff)

…在应用程序中的任何地方,甚至在静态常量声明中也是如此。不幸的是,它 支持 系统资源

对于本地资源,请使用此解决方案。这并非微不足道,但可以。



 类似资料:
  • 我收到错误。完整堆栈跟踪: 我是Android开发新手,不知道如何解决它。 我的代码: 有什么想法吗?

  • 问题内容: 关于这两个上下文的内容,已经有很多文章了。但是我仍然不太正确。 到目前为止,据我了解:每个实例都是其类的一个实例,这意味着某些程序员建议您尽可能频繁地使用它,以免“泄漏”任何内存。这是因为另一个this(获取Activity实例上下文)指向的Activity是每次用户倾斜手机或离开应用程序等时都将销毁的一个。显然,垃圾收集器(GC)无法捕获,因此使用了过多的内存。 .. 但是任何人都可

  • Logcat按摩 **从活动上下文外部调用startActivity()需要标志_Activity_NEW_TASK标志。这真的是你想要的吗?

  • 我想使用下面另一个活动简单代码示例中的活动上下文,有什么想法吗? 谢谢

  • 实现如下所示 > 其次,我有一个活动范围组件网,我提供了当前活动和需要上下文的不同视图。 @module public class ActivityModule{private

  • 当我从BroadCastReceiver启动活动时,会出现异常“从活动上下文外部调用startActivity(),需要标记_activity_NEW_TASK”。下面是我的接收代码 } 你可以看到,我已经设置了FLAG_ACTIVITY_NEW_TASK。我想指出另一件事。我从工作线程中的HTTP请求发送broadcastreceiver。代码最像这样: 有人遇到问题吗?任何帮助都很好。