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); } }