0
我想建立一个辅助类,它通过字符串的名称获取字符串(来自strings.xml)。访问独立于活动的字符串资源
在这个类中应该是一个用getIdentifier()
来获取字符串的方法。您需要此方法的上下文。现在每次我想使用这个帮助类时,我都必须将当前活动的上下文传递给它。但是strings.xml文件中的字符串与活动无关。
有没有办法为此目的获取应用程序上下文?
我想建立一个辅助类,它通过字符串的名称获取字符串(来自strings.xml)。访问独立于活动的字符串资源
在这个类中应该是一个用getIdentifier()
来获取字符串的方法。您需要此方法的上下文。现在每次我想使用这个帮助类时,我都必须将当前活动的上下文传递给它。但是strings.xml文件中的字符串与活动无关。
有没有办法为此目的获取应用程序上下文?
那么,只需在您的方法调用中将上下文设为paraemeter即可。
public static String getIdentifier (final Context context, int resource)
然后使用该上下文访问资源。
context.getString(resource);
为了从您的活动中调用该方法,请将'this'作为上下文。
String example = HelperClass.getIdentifier(this, R.string.example);
尽管它看起来是一个不必要的步骤,因为它只是一个额外的层面,你可以从活动中做些什么。
String example = getString(R.string.example);
不知道你的计划是什么。
用getIndentifier你可以得到String的id,而不是字符串本身。为了获得字符串,你需要一个上下文 – Blackbelt
@jasdefer字符串是独立的,但它们用在一个活动的上下文中,所以你必须提供上下文给帮助类 –
@Muhannad是的,我知道。但问题是,如果我可以给上下文一次助手类并从多个活动中使用它。 – jasdefer