getString()和getResources.getString()之间的区别

76

我注意到Activity类有两种不同的方法可以获取字符串资源。

  • getString(int resId):从应用程序包的默认字符串表中返回本地化字符串。

  • getResources().getString(int id):返回与特定资源ID相关联的字符串值。它将被剥离任何样式信息。

我不理解这两种方法之间的区别。有人能告诉我吗?


主要的区别在于Activity#getString()只能访问您自己的资源,而完全可以获取另一个应用程序的资源作为“Resources??” 对象,并从中选择。实际上,在实践中没有区别。 - Jens
3个回答

94

它们与Activity.getString(int)相同,因为它确切地执行了这个操作:

 public final String getString(int resId) {
     return getResources().getString(resId);
 }

4

它们是相同的方法,没有什么特别之处。


9
不同的方法,但是两种不同的方法都能完成同样的工作。 - Serdar Samancıoğlu

2
在碎片中,您可以使用getString()而不是getActivity().getString()

14
这完全没有回答问题。 - Tim

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接