我總是在我的共享首選項中獲得默認值,爲什麼會發生這種情況? 這裏就是我插入值的一部分:共享首選項始終採用默認值
holder.camera.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
RowData rd = getItem(position); //get list_row from i
System.out.println("OnClick Camera");
Intent takePicture = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
SharedPreferences prefs = (mContext).getSharedPreferences(
"com.oxtro.trustea", Context.MODE_PRIVATE);
SharedPreferences.Editor prefEditor = prefs.edit();
prefEditor.putString("crit_id_pref",String.valueOf(rd.criteria_id));
prefEditor.commit();
((Activity)mContext).startActivityForResult(takePicture, 0);
}
});
這裏就是我檢索它的值,該值是默認總是牽強,而不是需要一個:
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if (resultCode != RESULT_OK)
return;
Uri uri = data.getData();
System.out.println("File path is " + uri.toString());
String path = getRealPathFromURI(uri);
System.out.println("Real path is " + path);
imageupload= new ImageUploadManager(ChapterActivity.this);
imageupload.open();
SharedPreferences preferences = PreferenceManager.getDefaultSharedPreferences(ChapterActivity.this);
String t_critid = preferences.getString("crit_id_pref", "DEFAULT");
System.out.println("@OnActivityResult | shared pref crit id: "+t_critid);
}
你爲什麼要在你的第二個活動中分享你的共享首選項? PreferenceManager.getDefaultSharedPreferences(ChapterActivity.this); –
你是如何得到'mContext'的? – Kristopher