2012-01-31 16 views
1

私は1つのアクティビティに日付を保存し、その日付を別のアクティビティのtextViewに入れようとしています。私は、2つの活動を互いにコミュニケーションさせる方法についてはわかりません。 report.javaというファイルに、私は日付を取得してsharedPreferncesに保存するこのメソッドを持っています。私は自分のファイルを取得する方法を把握しようとしています2つのアクティビティ間でsharedPreferencesを使用する際の問題

private void updateLabel() { 
    date.setText(fmtDate.format(dateAndTime.getTime())); 
    SharedPreferences preferences = getPreferences(MODE_PRIVATE); 
    SharedPreferences.Editor editor = preferences.edit(); 
    editor.putString("date", date.getText().toString()); // value to store 
    editor.commit(); 
} 

は、私は私が午前と思う問題はレポートファイルの正しい名前を取得しているのTextView を投入するために、この検査の使用と呼ばれます。

public static final String PREF_FILE_NAME = "report"; 
    SharedPreferences preferences = getSharedPreferences(PREF_FILE_NAME, MODE_PRIVATE); 

その後、私はonResume(と呼ばれる方法で、このコードを持っている)

@Override 
public void onResume() { 
    super.onResume(); 
    SharedPreferences preferences = getPreferences(MODE_PRIVATE); 
    String strDate=preferences.getString("date", date.getText().toString()); 

    date.setText(strDate); 

} 

答えて

2

次の2個の別々の設定ファイルに値を保存しています。

SharedPreferences preferences = getPreferences(MODE_PRIVATE); 

SharedPreferences preferences = getSharedPreferences(PREF_FILE_NAME, MODE_PRIVATE); 

1つだけを使用してください。

+0

ありがとう、一度私は仕事でgetSharedPreferencesに切り替えました – Aaron

1

アプリのすべてのクラス/アクティビティからアクセスできるデフォルトの環境設定ファイルを使用してみませんか?

SharedPreferences preference = PreferenceManager.getDefaultSharedPreferences(yourContext); 
preferences.edit().putString(YOURKEY, yourStrValue); 

このようにして、アプリケーションに追加の環境設定ファイルを作成せずに、どの値がどのファイルに保存されているかを覚えておく必要があります。確かに人生は楽になります。

関連する問題