Android/画面遷移/メニューボタンから画面遷移
提供: 初心者エンジニアの簡易メモ
2015年5月20日 (水) 03:13時点における127.0.0.1 (トーク)による版 (ページの作成:「==以下ファイルを作成する== androidHelloworldSub.java sub.xml ==AndroidManifest.xmlに以下を追加== <<nowiki />activity android:name="AndroidHelloworldS...」)
以下ファイルを作成する
androidHelloworldSub.java sub.xml
AndroidManifest.xmlに以下を追加
<activity android:name="AndroidHelloworldSub"></activity>
AndroidHelloworld.javaを編集
package com.example.AndroidHelloworld;
import android.app.Activity;
import android.os.Bundle;
import android.content.Intent;
import android.view.Menu;
import android.view.MenuItem;
public class AndroidHelloworld extends Activity {
/** メニューID */
private final int MENU_ID1 = Menu.FIRST;
private final int MENU_ID2 = Menu.FIRST + 1;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
}
/**
* メニューを作成する
*/
@Override
public boolean onCreateOptionsMenu(Menu menu) {
super.onCreateOptionsMenu(menu);
menu.add(0,
MENU_ID1,
0,
getString(R.string.menu_next)).setIcon(android.R.drawable.ic_menu_crop);
menu.add(0,
MENU_ID2,
1,
getString(R.string.menu_finish)).setIcon(android.R.drawable.ic_menu_close_clear_cancel);
return true;
}
/**
* メニューボタン押下時の処理
*/
@Override
public boolean onPrepareOptionsMenu(Menu menu) {
super.onPrepareOptionsMenu(menu);
return true;
}
/**
* メニューを選択時の処理
*/
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case MENU_ID1:
// 次の画面に遷移させる
Intent intent = new Intent();
// intent.setClassName(
// "com.example.AndroidHelloworld",
// "com.example.AndroidHelloworld.AndroidHelloworldSub");
intent.setClassName(getPackageName(), getPackageName() + ".AndroidHelloworldSub");
startActivity(intent);
return true;
case MENU_ID2:
// Activity終了
finish();
return true;
default:
break;
}
return super.onOptionsItemSelected(item);
}
}
