「Android Studio」ツールバーの作成


リファレンスリンク


「アンドロイド」ツールバーの使用-ボタンの追加

ToolBarで使用するMenuを追加


  • resフォルダの下で、リソースディレクトリとしてmenuオプションを選択し、リソースファイルmenuオプションのファイルを作成します.

  • .xmlファイルの作成
  • <?xml version="1.0" encoding="utf-8"?>
    <menu xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:app="http://schemas.android.com/apk/res-auto">
        <item
            android:id="@+id/menu_search"
            android:title="search"
            android:icon="@drawable/ic_toolbar_search"
            app:showAsAction="always"
            />
        <item
            android:id="@+id/menu_relocate"
            android:title="search"
            android:icon="@drawable/ic_toolbar_relocate"
            app:showAsAction="always"
            />
    </menu>
    <item>ラベルは、それぞれメニューを表します.app: showAsActionは、常にツールバー上の動作で表されることを意味する.
    ちなみに、 xmlns:app="http://schemas.android.com/apk/res-auto"というコードは上部に追加する必要があります.

    以下のツールバーが生成されていることがわかります.
  • アクティビティでToolbar
  • を設定
     //Toolbar 를 AppBar로 지정하기
            Toolbar toolbar = (Toolbar)findViewById(R.id.toolbar);
            toolbar.setTitle(R.string.Toolbar_title);
            setSupportActionBar(toolbar);
            getSupportActionBar().setDisplayHomeAsUpEnabled(true); //뒤로가기 버튼, 디폴트로 true만 해도 back 버튼이 생김
    @Override
        public boolean onOptionsItemSelected(@NonNull MenuItem item) {
            switch (item.getItemId()){
                case R.id.toolbarmenu_search:
                    //검색창으로 이동
                case android.R.id.home:{
                    onBackPressed();
                }
                default: return super.onOptionsItemSelected(item);
            }
        }
     @Override
        public boolean onCreateOptionsMenu(Menu menu) {
            getMenuInflater().inflate(R.menu.toolbar_menu,menu);
            return true;
        }
    
    replaceFragment 메서드(活動範囲内)
    getSupportFragmentManager().beginTransaction().replace(R.id.home_ly,fragment).addToBackStack(null).commit();
  • 各セグメントのBackbuttonを表示/非表示に設定
  • 		//백버튼 숨기기
            ((MainActivity)getActivity()).getSupportActionBar().setDisplayHomeAsUpEnabled(false);
            //백버튼 보이기
            ((MainActivity)getActivity()).getSupportActionBar().setDisplayHomeAsUpEnabled(true);