私はメインアクティビティにシンプルなフォームを持っています。フォームを送信すると、アクティビティ2が開始されます。戻るボタンをクリックしてメインアクティビティに戻ると、すべての回答をクリアしたいと思います。メインアクティビティの以前の回答をクリアします
0
A
答えて
0
あなたはこの
@Override
public void onBackPressed() {
Intent intent = new Intent(Activity2.this, MainActivity.class);
startActivity(intent);
}
0
のような活動2)あなたの主な活動にonResume()を上書きし、あなたがonBackPressedを(上書きすることができます
@Override
public void onResume() {
editText.setText("");
}
または
のようにそこに対応するEditTextsをクリアすることができ
id
を任意のウィジェットに割り当て、アクティビティまたはフラグメントを停止すると、任意のウィジェットが保存されるようにonSaveState
が呼び出されます実際の値を表示し、そのアクティビティに戻ったときに表示します。あなたが戻ってあなたがそれを手動で行う必要があるでしょう、他の活動から来たときに
だから、あなたのEditTextをクリーンアップするために、私はあなたが私にはないのアクティビティのライフサイクル
0
に応じonRestart
機能でそれを行うことをお勧めエレガントな解決策を知っているが、それは作品べき:
public class MainActivity extends AppCompatActivity {
private boolean secondActivityLaunched;
@Override
protected void onCreate(Bundle savedInstanceState) {
fab.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
secondActivityLaunched = true;
startActivity(new Intent(MainActivity.this, SecondActivity.class));
}
});
}
@Override
protected void onStart() {
super.onStart();
if (secondActivityLaunched) {
secondActivityLaunched = false;
clearForm();
}
}
}
0
第一の活動:MainActivity.java
package com.test.activitytest;
import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
EditText name=(EditText) findViewById(R.id.name);
EditText email=(EditText) findViewById(R.id.email);
EditText phone=(EditText) findViewById(R.id.phone);
Button submit = (Button)findViewById(R.id.button);
submit.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent it=new Intent(MainActivity.this,Activity2.class);
it.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(it);
finish();
}
});
}
}
第二の活動:Activity2.java
package com.test.activitytest;
import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
public class Activity2 extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_2);
}
@Override
public void onBackPressed() {
super.onBackPressed();
Intent it=new Intent(Activity2.this,MainActivity.class);
it.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(it);
finish();
}
}
関連する問題
- 1. どのように以前の回答のためにJDOM
- 2. 以前の質問による多レベルの回答
- 3. クリア後、localStorageは以前の値を記憶します
- 4. Eclipse CDTは以前のビルドのエラーをクリアしません
- 5. は、私が得た以前の回答に基づいてContactList
- 6. 関数の和集合 - 以前の回答を継続的に追加しますか?
- 7. メインアクティビティの前にポップアップするアクティビティ
- 8. アラームマネージャで以前のアラームをクリアする方法は?
- 9. Googleマップマーカードラッグ終了方向 - 以前のルートをクリアする
- 10. Testcompleteで以前のエラーログをクリアするには
- 11. 新しい値を追加して以前の選択をクリアする - Select2 multiple
- 12. Qualtrics-回答者が入力したゼロを残すことができますが、残りをクリアします。
- 13. git rmの後に以前のgit commitからファイルを回復します
- 14. リクエスト前に前のデータをクリアする
- 15. ResearchKitを使用して作成したアンケートアンケートで以前に選択した回答を表示
- 16. テキスト領域から以前のすべてのテキストをクリアする方法は?
- 17. インテントでビットマップを共有しても以前のビットマップがクリアされない
- 18. GL図面ビューは回転時の図面をクリアします
- 19. ソケットクライアントの回答
- 20. Androidのお電話2つ以上のメインアクティビティからのクラス
- 21. ExtJS 4.2.2 Comboboxで前回選択した項目をクリアするには?
- 22. は、私はこの回答から例を以下、別のラムダを起動しようとしています
- 23. 私はそれぞれの回答に対して異なる回答をしています。私のコードは複数の応答を出力します。 Python
- 24. GNU screen以下:前回の出力を上書きする
- 25. matplotlibアニメーションを保存するときに以前のフレームがクリアされない
- 26. "void quizResults()"メソッドでユーザーの回答と正しい回答を出力する
- 27. 要素の以前のスタイルをすべてクリアして新しい要素を適用する
- 28. 次回と前回の記事を次回と前回のリンクにしたい
- 29. このタスクの以前のすべてのアクティビティをクリアすることはできますか?
- 30. DHCでリポジトリ内の以前の応答にアクセスできない
このコードでは、タスクスタックにもっと多くのアクティビティが追加されますが、これはアプリケーションに必要な動作ではないと思います。 –
よりもお仕事です!! :) – JAY123