2013-06-11 2 views
0

모듈에서 Activity의 옵션 메뉴에 항목을 추가하려고합니다. 하지만 옵션 메뉴가 없다면 나만의 메뉴를 부 풀릴 수 있습니다. 모듈에 xml을 선언하면 리소스를 찾을 수 없다고 표시됩니다. 그래서 어쩌면 레이아웃 파일없이 메뉴를 부 풀릴 수있는 방법이 있을까요?xml없이 inflate 옵션 메뉴

는 말은 getMenuInflater().inflate(id, menu);

편집 :

없음 대답

내가 요구 것을, 그래서 내 질문을 지정하려고합니다. 혹시 onOptionsMenuCreated이 없다면 ( reflections 통해 확인) 모듈에서 Activity으로 사용자 정의 메뉴를 부 풀릴 필요가 있습니다. 내가 어떻게 해?

+0

당신이> 클린 프로젝트 -를 사용하여 청소를 시도 했

public boolean onCreateOptionsMenu(Menu menu) { MenuItem menuItem = menu.add(Menu.NONE, Menu.NONE, Menu.NONE, R.string.title_about); menuItem.setShowAsAction(MenuItem.SHOW_AS_ACTION_IF_ROOM); menuItem.setIcon(R.drawable.ic_about); ... } 

건배를? logcat 출력은 무엇입니까? –

+0

동일합니다. 나는 그것이 도서관이 아닌 프로젝트에서 자원을 찾고 있다고 가정한다. 그러나 나는 왜 그런지 이해하지 못한다. –

답변

1

xml과 java 코드를 모두 사용하여 메뉴를 만들 수 있습니다. 코드를 통해 메뉴 항목을 추가하려면 다음과 같은 것을 사용하십시오.

@Override 
public boolean onCreateOptionsMenu(Menu menu) { 
    menu.add("Add") 
    .setIcon(R.drawable.menu_add) 
    .setShowAsAction(MenuItem.SHOW_AS_ACTION_IF_ROOM); 
    return true; 
} 
+0

"추가"를 클릭 한 것을 어떻게 압니까? 나는 ID가 없다는 것을 의미한다 – temirbek

1

팽창이란 XML 파일을 Java 객체로 변환하는 것을 의미합니다. XML 파일없이 팽창하는 것과 같은 것은 없습니다. 그러나이 같은 예를 들어, 자바 코드를 사용하여 메뉴를 만들 수 있습니다

0
@Override 
public boolean onCreateOptionsMenu(Menu menubn) { 
    menubn.add("Add"); 
    menubn.setIcon(R.drawable.menuoption); 
    menubn.setShowAsAction(MenuItem.SHOW_AS_ACTION_IF_ROOM); 

} 
+0

어떻게 "Add"를 클릭했는지 아는가? 나는 이드가 없다는 것을 의미한다. – temirbek