군침이 싹 도는 코딩

ActionBar menu 사용법 본문

Android

ActionBar menu 사용법

mugoori 2023. 2. 6. 17:30
// 액션바에 타이틀 변경법
getSupportActionBar().setTitle("직원 리스트");

# 액션바의 제목을 바꿀때는 getSupportActionBar를 사용해 가져온 뒤 

setTitle로 바꿔주면 된다 코드의 위치는

바꾸고 싶은 액티비티의 onCreate 안에 넣으면 된다

 

 

 

 

 

 

 

# 액션바에 버튼을 달아주고싶다면 res > new > Android Resource File

파일 이름을 적고 Resource type 을 Menu로 선택해준다음 OK를 눌러준다

 

 

# xml 파일을 열고 메뉴 아이템을 끌어온 뒤 원하는대로 바꿔주면된다 

icon을 넣으면 해당모양으로 액션바에 추가가 된다 눌렀을때 이벤트를 추가하기위해

id값도 넣어준다 showAsAction 항목을 always 하면 항상 버튼이 보이게 된다

 

 

 

// 액션바의 메뉴는 전용함수가 있다 이 함수를 오버라이딩 해야한다
@Override
public boolean onCreateOptionsMenu(Menu menu) {
    // 액션바에 메뉴가 나오도록 설정한다
    getMenuInflater().inflate(R.menu.main, menu);
    return true;
}

// 액션바에 메뉴를 탭 했을때 실행하는 함수가 있다 이 함수를 오버라이딩 한다

@Override
public boolean onOptionsItemSelected(@NonNull MenuItem item) {
    int itemId = item.getItemId();

    if (itemId == R.id.menuAdd){
        // AddActivity 실행하는 코드
        Intent intent = new Intent(MainActivity.this,AddActivity.class);
        launcher.launch(intent);

    }else if (itemId == R.id.menuAbout){
        // AboutActivity 를 실행하는 코드

    }
    return super.onOptionsItemSelected(item);
}

# 액션바에 나오게 하는 코드는 onCreate 밖에다 작성하도록한다

onCreateOptionsMenu라는 함수를 오버라이딩해서 메뉴가 나오게 설정할 수 있다

탭했을때의 동작은 onOptionsItemSeletcted 함수를 오버라이딩해서 사용한다