我有一個問題,通過閱讀非活動類的getSharedPreferences設置播放器中的播放列表...在我的活動我從edittext中獲取字符串變量以獲取文件夾的路徑來處理音頻文件...Android非活動getSharedPreferences
public class MainActivity extends Activity {
String ppp;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
String PATH = getSharedPreferences("PATH", MODE_PRIVATE).getString("path", ppp);
if (PATH == null){
..........
...........
path_tv.setText("folder is undefined");
}
else {
path_tv.setText("folder defined: /mnt/sdcard/" + PATH);
}
set_path.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (path_edit.getText().toString().length() == 0){
Toast.makeText(getBaseContext(), "folder is undefined", Toast.LENGTH_SHORT).show();
}
else {
ppp = path_edit.getText().toString();
getSharedPreferences("PATH", MODE_PRIVATE)
.edit()
.putString("path", ppp)
.commit();
File folder = new File(Environment.getExternalStorageDirectory() + "/" + ppp);
boolean success = false;
if (!folder.exists()) {
success = folder.mkdir();
if (success) Toast.makeText(getBaseContext(), ".....", Toast.LENGTH_SHORT).show();
}
String PATH = getSharedPreferences("PATH", MODE_PRIVATE).getString("path", ppp);
path_tv.setText("........ /mnt/sdcard/" + PATH);
path_edit.setText("");
}
}
});
所以,在活動我可以改變並保存在共享偏好字符串的值...但是浩我能做到這一點從公共類...?欣賞任何例子...
好吧,我已經添加了MyApp到manifest,並且作爲一個擴展的類...現在在我的類中創建了構造函數,其中添加了AppApp.getInstance(); – timonvlad
但它仍然給nullpointexception ....有什麼問題? – timonvlad
你可以給堆棧跟蹤嗎?可能在我的電子郵件中 - 當我們解決您的問題時,我們可以編輯您的問題或我的答案。 我一直在使用這樣的解決方案多次。 –