私は Android アプリを作成しており、ユーザーがカスタマイズできる設定をいくつか提供したいと考えています。ただし、オーバーフローで設定ボタンを押すたびに、設定が読み込まれず、アプリがクラッシュします。
これが私のメニューとメニュースイッチャーのコードです:
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
public boolean onOptionsItemSelected(MenuItem item) {
switch(item.getItemId()) {
case R.id.action_settings:
Intent intent = new Intent(this, SettingsActivity.class);
startActivity(intent);
return true;
}
return super.onOptionsItemSelected(item);
}
設定アクティビティは次のとおりです。
public class SettingsActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
getFragmentManager().beginTransaction().replace(android.R.id.content, new SettingsFragment()).commit();
}
}
設定のフラグメントは次のとおりです。
public class SettingsFragment extends PreferenceFragment {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
addPreferencesFromResource(R.xml.preferences);
}
}
設定ページを処理する別の方法はありますか? Android Developer サイトの指示に従いました。
簡単に言うと、これらの設定を保存してメイン アクティビティでアクセスするにはどうすればよいですか?