入力内容を保存するテキスト フィールドを取得しようとしています。次に、同じアプリ内の別の画面に保存されたテキストを読み込もうとしています。
現在、テキストフィールドが表示されています。ボタンを押すと、新しい画面に表示されますが、保存されずに送信されます。
入力内容を保存するテキスト フィールドを取得しようとしています。次に、同じアプリ内の別の画面に保存されたテキストを読み込もうとしています。
現在、テキストフィールドが表示されています。ボタンを押すと、新しい画面に表示されますが、保存されずに送信されます。
データを明示的に保存し、onCreateまたはonResumeでデータを明示的にロードする必要があります。これを行うにはいくつかの方法があります(ファイルに書き込む、データベース、SharedPreferencesなどを使用する)。あなたにとって最良の方法は、おそらくそれらのテキスト文字列をインテントで名前付きエキストラとして送信し、2番目のアクティビティでインテントから読み取ることです。したがって、activity1はintent.putExtra( "textfield1"、value)を呼び出し、activity2はtextView.setText(intent.getStringExtra( "textfield1"、 ""))を呼び出します。
次のように使用します。
Intent i=new Intent(this,ActivityName.class);
i.putExtra("key_to",text);
startActivity(i);
追加の値を入れると、キーと値のペアで保存されるため、ターゲット アクティビティでは次のように抽出することに注意してください。
String text=(String)this.getIntent().getExtras().get("key_to");
また、これらはすべてアクティビティの非静的メソッドで記述されています。静的メソッドでアクセスする場合は、初期化中のgetBaseContext()
代わりに使用しますthis
Intent