私はアンドロイドアプリケーションで活動しており、そこからWebサービスを呼び出すAsyncTaskクラスのメソッドを呼び出しています。私はその方法から得た結果に基づいて自分の活動をリセット/再読み込みしたい。そのクラスから自分のアクティビティをリセットするにはどうしたらいいですか?Androidのアクティビティをリセットする
1
A
答えて
2
あなたは、コンストラクタであなたのAsyncTaskにActivityコンテキストを呼び出して、次の
パスを試してみて、変数のコンテキストのコンテキストに保存することができます。
その後AsyncTaskのごPostExecute方法では、以下の行を書きます
Intent targetIntent = new Intent(context, TargetActivity.class);
// Add your data to intent
targetIntent.putExtra("intent_extra_key", "intent_extra_value");
context.startActivity(targetIntent);
((Activity) context).finish();
がすべての問題のために戻します。
+0
ありがとうworksi ... –
0
例:
注:コメントを削除し、削除したり、startActivity(i)についてコメントを使用します。下のコード例を変更せずにテストする場合は、onPostExecute(Boolean aBoolean)を使用します。
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
new LoadFromWebAsyncTask(this).execute();
}
private class LoadFromWebAsyncTask extends AsyncTask<Void, Void, Boolean> {
MainActivity activity;
LoadFromWebAsyncTask(MainActivity activity) {
this.activity = activity;
}
@Override
protected Boolean doInBackground(Void... params) {
return true;
}
@Override
protected void onPostExecute(Boolean aBoolean) {
super.onPostExecute(aBoolean);
activity.finish();
Intent i = new Intent(MainActivity.this, MainActivity.class);
startActivity(i);
/* final Handler handler = new Handler();
handler.postDelayed(new Runnable() {
@Override
public void run() {
activity.finish();
Intent i = new Intent(MainActivity.this, MainActivity.class);
startActivity(i);
}
}, 5*1000);*/
}
}
}
関連する問題
- 1. Androidのステップカウンターをリセットする
- 2. 別のアクティビティを開いた後の主なアクティビティのリセット
- 3. AndroidをリセットするsetNetworkPreference
- 4. Androidのアクティビティをクリアする
- 5. Androidフォームのリセット?
- 6. AndroidのリセットDialogFragment
- 7. Android - ViewPagerスクロールのリセット
- 8. Android:リセット音声
- 9. 新しいアクティビティを開始せずにアクティビティスタックをリセットする
- 10. Android:アクティビティをリフレッシュ
- 11. Androidのアクティビティ
- 12. Xamarin Androidのアクティビティ
- 13. androidでのアクティビティ
- 14. Androidのアクティビティ名
- 15. androidのアクティビティ
- 16. Android:プレローディングリストのアクティビティ
- 17. Androidコミュニティのアクティビティ
- 18. Androidアプリケーションからアチーブメント/リーダーボードをリセットする
- 19. AndroidでオートインクリメントをリセットするSQLite
- 20. Android Studioでマスターパスワードをリセットする
- 21. Androidで以前のアクティビティからアクティビティをフェードインする
- 22. androidのアクティビティXからアクティビティXを開始する
- 23. Androidアクティビティが前回のアクティビティを更新する
- 24. Android VideoViewアクティビティがクラッシュする
- 25. キーボードのアクティビティをAndroidで作成する
- 26. バックグラウンドでAndroidのアクティビティを変更する
- 27. android - on touchのアクティビティを開始する
- 28. Androidデバイスをロックするためのアクティビティ
- 29. Androidのアクティビティを再開する
- 30. Androidアプリのアクティビティを保護する
なぜ活動を再作成しますか?単純にデータをサービスから設定しただけではない –
'AsyncTask'が終了した後、' EventBus'を使ってアクティビティスレッドを更新することができます。 –
サービスはデータをポストし、0/1を返します。私はそのクラスのデータを設定するためのコントロールにアクセスできません。 –