mainActivityとchildActivityの 2 つのアクティビティを実行しています。ユーザーがmainActivityのボタンをクリックするたびに、childActivityが起動されます。私がやりたいことはこれです:
アクティブなアクティビティがchildActivityで、ユーザーがホーム ボタンをクリックしてからアプリケーションを再起動すると、起動されるmainActivity の代わりに childActivityが表示されます。
実際に回避策をいくつか提案してもらいました。onStart、onRestart、onResume、onStop、onDestroy イベントを操作しようとしました。しかし、彼らは問題を完全には解決しませんでした。そこには賢い方法があるはずです。ありがとうございました。
編集:
答えてくれてありがとう、Sonil。あなたが言ったケースは、アクティビティが最近のアクティビティウィンドウから呼び出されたときに発生しています。(ホームボタンを長押しするとウィンドウが開きます)ただし; これは、ホーム画面から開いた場合には発生しません。(最初から開くなど)コードにこのエラーを生成する特定の問題があるとは思いません。というのは、テスト プロジェクトを作成し、質問を送信する前にスタンドアロンで試してみたところ、同じ問題に直面したためです。とにかく、ここにテストコードがあります:
public class MainActivity extends Activity implements OnClickListener {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
this.setTitle("MainActivity");
((Button) findViewById(R.id.btnChildActivity)).setOnClickListener(this);
}
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
startActivity(new Intent(this, ChildActivity.class));
}
}
public class ChildActivity extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main2);
this.setTitle("ChildActivity");
}
}