2009-12-31 4 views
6

기존 메뉴의 이름을 바꾸는 방법을 알고 계십니까?기존 메뉴 항목의 이름을 바꾸는 방법은 무엇입니까?

메뉴 항목을 누를 때 이름을 바꿀 수 있습니다. 하지만 버튼을 누를 때 메뉴 항목에 액세스하는 방법을 모르겠습니다.

상담하십시오.

+0

귀하의 질문에 약간의 불확실성이 있습니다. '메뉴', '메뉴 항목'및 '버튼'과 같은 용어를 혼동하는 것 같습니다. 당신은 명확히 할 수 있습니까? –

답변

27

당신이 질문을 약간 명확히 할 수 있지만, 당신의 활동 중 하나 내부의 onPrepareOptionsMenu 메소드가 호출 될 때마다 사용자가 자신의 안드로이드 장치의 메뉴을 누를 때 그것은 좋은 것입니다. 처음 메뉴가 표시되면 (예 : 번만) onCreateOptionsMenu 메소드가 호출됩니다.

기본적으로 onPrepareOptionsMenu 방법은 특정 메뉴 항목을 설정/해제하거나 상황에 따라 메뉴 항목 텍스트를 변경하는 등의 변경 작업을 수행하는 곳입니다. 일례로서

:

@Override 
public boolean onPrepareOptionsMenu(Menu menu) { 

    // Check current message count 
    boolean haveMessages = mMessageCount != 0; 

    // Set 'delete' menu item state depending on count 
    MenuItem deleteItem = menu.findItem(R.id.menu_delete); 
    deleteItem.setTitle(haveMessages ? R.string.delete : R.string.no_messages); 
    deleteItem.setEnabled(haveMessages); 

    return super.onPrepareOptionsMenu(menu); 
} 
+2

응답 해 주셔서 감사합니다. 해결책을 찾았습니다 : public boolean onMenuOpened (int featureId, Menu menu) 내 경우에는 괜찮을 것입니다. – AndroiDBeginner

+0

kbd 태그 +1, 내가 알지 못했던 멋진 글) – Guillaume

0

MenuItem.setTitle()을 사용하십시오. 이것이 당신이 필요로하지 않은 것이라면, 당신은 더 구체적이어야합니다.

0

onPrepareOptionsMenu는 메뉴 아이템을 변경하는 적절한 장소이다.

+0

문서에서 보면 그렇게 보일 것입니다. 어떤 생각을 onMenuOpened 메서드를 사용할 수 있습니까? 메뉴를 변경할 수도 있습니다. – barry

관련 문제