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