我希望用户从他的图库中选择一张图片,因此我有以下内容。
我有一个SettingsActivity,其中说:
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (requestCode == RESULT_LOAD_IMAGE && resultCode == RESULT_OK && null != data) {
//do sth here
}
}
在此SettingsActivity的onCreateMethod中,我执行:
getFragmentManager().beginTransaction().replace(android.R.id.content, new SettingsFragment()).commit();
然后我有了SettingsFragment,它在onCreate()
中执行以下操作Preference pref = (Preference) findPreference(SettingsConstants.Key.PREF_BACKGROUND_IMAGE);
pref.setOnPreferenceClickListener(new Preference.OnPreferenceClickListener() {
@Override
public boolean onPreferenceClick(Preference preference) {
Intent intent = new Intent();
intent.setType("image/*");
intent.putExtra(Intent.EXTRA_LOCAL_ONLY, true);
intent.putExtra(Intent.CATEGORY_OPENABLE, true);
intent.setAction(Intent.ACTION_GET_CONTENT);
getActivity().startActivityForResult(Intent.createChooser(intent, "Select Picture"), SettingsActivity.RESULT_LOAD_IMAGE);
return true;
}
});
这在4.2中有效 - 但不再使用4.3了!谁能告诉我这里我缺少什么,或者是否有人面临同样的问题?
答案 0 :(得分:0)
它被调用,但片段中设置的请求代码u在你的参数中是不同的
onActivityResult
活动的方法!