2012-06-18 3 views
-2

버튼을 누를 때 부울이 바뀌지 않는 이유를 알아 내려고 노력했습니다. 수동으로 변경했을 때 효과가 있었지만 아무 것도하지 않았습니다. 나는 그 단어에 대한 튜토리얼을 따르려고했지만 작동하지 않는다. 아무도 내가 잘못 가고있는 것을 지적 할 수 있습니까?안드로이드 메뉴 코드가 작동하지 않습니다.

public boolean onOptionsItemSelected(MenuItem menu) 
{ 
    MenuItem freeze = (MenuItem)findViewById(R.id.freeze); 
    // Handle item selection 
    switch (menu.getItemId()) { 
     case R.id.freeze: 
      if (freze == false){ 
       freze = true; 
      } else { 
       freze = false; 
      } 
      return true; 
     case R.id.toggleVolCount: 
      if (toggleVol == true){ 
       toggleVol = false; 
      } else { 
       toggleVol = true; 
      } 
      return true; 
     default: return super.onOptionsItemSelected(menu); 
    } 

모든 도움을 주셔서 감사합니다. 제안 된 코드를 시도했을 때 작동하지 않아 다시 돌아가서 메뉴를 변경했습니다. 이전에 onClick을 사용하여 메뉴를 만드는 버튼을 만들었습니다. 이전에 작성한 코드가 잘 작동하는 코드로 아이콘을 만들었습니다. 이 나보다 다른 사람이 내가 바보의 너무 기분이 안 도움이되기를 바랍니다.} 고해상도 폴더에서

+1

당신은'freeze'을 의미, '자유하지 마라 '. 그렇게하면 컴파일 오류가 발생하기 때문에 오타라고 추측합니다. – keyser

+1

그 오타가 잘못 생각합니다. freeze! = freze – 2619

+0

[이것 좀보세요] (http://www.droidnova.com/how-to-create-anption-menu,427.html) – Praveenkumar

답변

1

이 그릴 수

해당 폴더의 새 XML 파일 optionmenu.xml 만들기와 같은 하나 개의 폴더 메뉴를 만들 수 있습니다.

이 코드를 작성에서 onCreate 방법에서
<?xml version="1.0" encoding="utf-8"?> 
<menu xmlns:android="http://schemas.android.com/apk/res/android"> 
    <item android:id="@+id/menuitem" 
     android:title="Prefs"> 
    </item> 
     <item android:id="@+id/menuitem1" 
     android:title="Prefs1"> 
    </item> 


</menu> 

....

setOptionMenu(R.menu.optionmenu); 

및 메뉴의 오버라이드 (override)하는 방법에서이 코드를 작성 .....

@Override 
    public boolean onOptionsItemSelected(MenuItem menu) { 
     switch (menu.getItemId()) { 
     case R.id.menuitem: 
      startActivity(new Intent(this, Prefs.class)); 
      break; 

case R.id.menuitem1: 
      startActivity(new Intent(this, Prefs1.class)); 
      break; 
     default: 
      break; 
     } 

     return true; 
    } 
관련 문제