「Up Navigation を実装するには」の版間の差分
提供: tknotebook
(→追記) |
(→追記) |
||
46行: | 46行: | ||
==追記== | ==追記== | ||
− | Android 1.14.0 以降では 従来のアクションバーに代わり | + | Android 1.14.0 以降では 従来のアクションバーに代わり ツールバーが使われるようになりました。 |
しかし、コード | しかし、コード |
2015年10月10日 (土) 05:53時点における版
メインページ>コンピュータの部屋#Android>Android Tips
Up Navigation とは今の画面例のように、アクションバーの左端に矢印が表示され、それを押すと親のアクティビティに戻る動作のことです。
これを実現するには3つの処理が必要です。
Up Navigation の矢印を表示するには、アクティビティの onCreate メソッドなどで
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
とすればOKです。
==Up Navigation の イベントを処理する。
Up Navigation の矢印をタッチすると、アクティビティの onOptionsItemSelected メソッドが呼ばれるので、以下のように処理します。
@Override public boolean onOptionsItemSelected(MenuItem item) { switch (item.getItemId()) { // Respond to the action bar's Up/Home button case android.R.id.home: NavUtils.navigateUpFromSameTask(this); return true; } return super.onOptionsItemSelected(item); }
マニフェストを変更する
NavUtils.navigateUpFromSameTask(this);
はマニフェストにアクティビティの親アクティビティ(戻り先)を記述しないと落ちます。
マニフェストのアクティビティの記述に以下の行を加えます。
android:parentActivityName=".MainActivity"
上記はメインアクティビティに戻るための記述ですが、戻り先は任意のアクティビティで大丈夫です。
追記
Android 1.14.0 以降では 従来のアクションバーに代わり ツールバーが使われるようになりました。
しかし、コード
setSupportActionBar(toolbar);
でツールバーを従来のアクションバーと同様に扱うことができます。