0

簡単なログインアプリを作成しています。成功すると、ログに記録された後にユーザー名が表示されます。ここでは、次のようにインテントLogin Pageを介してユーザー名を送信しています。Second Page

String sendusername=results;
            Intent inte=new Intent(Login.this,SubmitActivity.class);
            inte.putExtra("displayusername", sendusername);
            startActivity(inte);

次のように2ページ目でその意図を受け取ります。

Intent inte=getIntent();
    final String Username=inte.getStringExtra("displayusername");

この値をで表示していますが、TextViewここでの問題は、2番目のページに戻ったときに前のページに移動した後null、ユーザー名の代わりに値が表示されていることです。これについて私にアイデアを与える人はいますか?

4

3 に答える 3

1

SharedPreferencesの使用を見てください。これは、Androidアプリのグローバルデータに最も近いものです。

useernameを保存するには:

SharedPreferences prefs = context.getSharedPreferences("myPrivateData",
    PreferenceActivity.MODE_PRIVATE);
SharedPreferences.Editor editor = prefs.edit();
editor.putString("username", username);
editor.commit();

そして、ユーザー名を読むには:

SharedPreferences prefs = context.getSharedPreferences("myPrivateData",
    PreferenceActivity.MODE_PRIVATE);
username = prefs.getString("username", null);  // where null is the default

また、アプリを最初に起動するときに、この設定を必ずクリアしてください。

于 2013-02-27T13:25:33.337 に答える
0

ログイン後、共有設定でユーザー名を保存でき、いつでも必要なときにユーザー名を取得できます。

于 2013-02-27T13:25:01.633 に答える
0

私にとって最良の方法は、Applicationクラスを使用することです。

こちらのAndroidドキュメントを参照してください。

http://developer.android.com/reference/android/app/Application.html

そして、この投稿をチェックしてください:

Androidアプリケーションクラスを使用してデータを永続化する

より多くの変数が必要な場合は、それらをこのクラスに追加するだけで、基本的にどこからでも使用できます。

于 2013-02-27T14:43:08.790 に答える