Android 使用R.something获取SharedReferences?
以下几行:Android 使用R.something获取SharedReferences?,android,sharedpreferences,Android,Sharedpreferences,以下几行: String app_name = "@string/app_name"; SharedPreferences sharedPreferences = getSharedPreferences(app_name, 0); 我得到一个非法argumentException: 文件@string/app_name.xml包含路径分隔符 如果我这样做: SharedPreferences sharedPreferences = getSharedPreferences("MyAppNam
String app_name = "@string/app_name";
SharedPreferences sharedPreferences = getSharedPreferences(app_name, 0);
我得到一个非法argumentException
:
文件@string/app_name.xml包含路径分隔符
如果我这样做:
SharedPreferences sharedPreferences = getSharedPreferences("MyAppName", 0);
它工作得很好,但是我如何在不硬编码应用程序名称的情况下使用它?
我不能使用R.string.app\u名称,因为这是一个int。您可以这样做
String app_name = getResources().getString(R.string.app_name);
SharedPreferences sharedPreferences = getSharedPreferences(app_name, 0);
你可以这样做
String app_name = getResources().getString(R.string.app_name);
SharedPreferences sharedPreferences = getSharedPreferences(app_name, 0);
你不能像这样从
strings.xml
字符串app_name=“@String/app_name”代码>在您的java代码中
从strings.xml
到java代码
使用getResources().getString(R.string.yourStringName)代码>
因此将代码更改为
String app_name = getResources().getString(R.string.app_name);
你不能像这样从strings.xml
字符串app_name=“@String/app_name”代码>在您的java代码中
从strings.xml
到java代码
使用getResources().getString(R.string.yourStringName)代码>
因此将代码更改为
String app_name = getResources().getString(R.string.app_name);