私は現在、Androidアプリケーションを作成するにあたり、ゆっくりではあるが安定した動きをしています。現在、新しいウィンドウを作成して切り替えています。これはすべてうまくいっていますが、小さな問題が1つあります。 「戻る」ボタンを押すと、そのボタンが押されたときに戻ることを選択した場合でもアプリケーションが終了します。「戻る」ボタンを押すとアプリケーションが終了します
@Override
public void onBackPressed() {
finish();
return;
}
何か迷ったことはありますか?
ありがとうございます。
EDIT
@Override
public boolean onCreateOptionsMenu(Menu menu)
{
MenuInflater menuInflater = getMenuInflater();
menuInflater.inflate(R.menu.main, menu);
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item)
{
// Handle item selection
switch (item.getItemId())
{
case R.id.menuItem1:
setContentView(R.layout.about);
return true;
case R.id.menuItem2:
System.exit(0);
return true;
default:
return super.onOptionsItemSelected(item);
}
}
EDIT 2:あなたは、 "ウィンドウを切り替える" ことIntents
を使用する必要がAbout.java
package weather.right;
import weather.right.now.R;
import android.os.Bundle;
public interface About {
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.about);
}
}
finish()は現在のアクティビティを終了します。他のアクティビティがまだ実行されていることは確かですか?ほとんどの場合、実際にはベットされていますrはAndroidを残して、戻るボタンを処理し、関数をオーバーライドしません。現在の活動を開始するために使用するコードを投稿できますか? – joshhendo
私はわかりませんが、私が "ウィンドウの切り替え"をどのようにしているか見るために私の編集を見ることができます – Erik
'System.exit()'や 'setContentView()'を ' MenuItems'を呼び出します。戻るボタンをオーバーライドするときに 'finish()'を呼び出すので、 'Activity'が現在実行中のものは、それを閉じると終了します。 – adneal