또한 PreferenceActivity가 onActivityResult를 반환하지 않는다는 사실을 발견했습니다. 즉, SubActivity가 환경 설정을 직접 저장할 수없는 이유가 있습니까? 당신이 그것의 값을 확인해야 할 경우, 당신은 내가 블루투스 장치를 선택하기위한 활동을 다시 사용할 수 있도록하고 싶습니다, 이상적으로
//SubActivity onCreate
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Button btn = (Button) findViewById(R.id.Button01);
btn.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
SharedPreferences prefs = getSharedPreferences(TestPreferenceActivity.PREFS_FILE, MODE_WORLD_READABLE);
prefs.edit().putString("mykey", "someValue").commit();
finish();
}});
}
//PreferenceActivity onResume
@Override
protected void onResume() {
Log.d(TAG, "Preferences Resumed");
//Check for new Preference Values
SharedPreferences prefs = getSharedPreferences(PREFS_FILE, MODE_WORLD_READABLE);
String value = prefs.getString("mykey", "defValue");
Log.d(TAG, "Current value is: " + value);
super.onResume();
}
.. 해결 방법으로 당신의 PreferenceActivity를의 onResume에서 그것을 확인할 수 있습니다 그 결과를 기본 설정 값으로 사용하십시오. 또한 PreferenceActivity 호스팅을 변경하지 않고 XML에서 하나 이상의 구성된 Bluetooth 장치에 사용할 수있는 다시 사용할 수있는 환경 설정을 갖고 싶습니다. 내가 현재 할 수있는 가장 가까운 것은 다른 활동을 시작하고 완료시 그 결과를 환경 설정에 저장하는 활동을 시작하는 환경 설정을 갖는 것입니다. 그러나이 추가 활동을 모두 피하는 것이 좋습니다. – SoftMemes
적어도 이것은 좋은 생각입니다. –