これはあなたが求めている正確に何ではないかもしれないが、ここで私は何をすべきかです:
私のメインの活動で、私は好みのアクティビティを呼び出すときに、私は余分なとしてそれをカスタム設定ファイルの名前を渡します目的のデータ:
static final String EXTRA_PREFERENCES_NAME = "android.intent.extra.PREFERENCES_NAME";
...
Intent intent = new Intent(this, Preferences.class);
intent.putExtra(EXTRA_PREFERENCES_NAME, preferencesName);
startActivity(intent);
はその後、私の好みの活動で、私は、カスタム設定名を取得し、このようにそれを設定します。最後に
public class Preferences extends PreferenceActivity {
private String preferencesName = "";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// get the custom preferences name from the extra data in the intent
preferencesName = getIntent().getExtras().getString(MainActivity.EXTRA_PREFERENCES_NAME);
// set the preferences file name
getPreferenceManager().setSharedPreferencesName(preferencesName);
// get the default preferences from XML
addPreferencesFromResource(R.xml.preferences);
}
、私の主な活動で、私はSを取得します
SharedPreferences preferences = getSharedPreferences(preferencesName, MODE_PRIVATE);
String somePreference = preferences.getString("somePreference", defaultValue);
あなたは複数のsharedpreferencesファイルを持つことができます知っていますか? –