2013-12-11 5 views
16

developer.android.com의 자습서를 따르고 작업 표시 줄에 항목을 추가하려고합니다.작업 표시 줄에 작업 표시 줄이 나타나지 않습니까?

검색 액션이 액션 버튼 요소 대신 오버플로 요소로 표시하는 코드를 모두 추가했지만. 소프트 키보드 옵션이있는 4 "및 7"가상 장치를 사용하려고했습니다. 여기

여기에

main_activity_actions.xml 
<?xml version="1.0" encoding="utf-8"?> 
<menu xmlns:android="http://schemas.android.com/apk/res/android" > 
<!-- Search, should appear as action button --> 
<item android:id="@+id/action_search" 
    android:icon="@drawable/ic_action_search" 
    android:title="@string/action_search" 
    android:showAsAction="ifRoom" /> 
<!-- Settings, should always be in the overflow --> 
<item android:id="@+id/action_settings" 
    android:title="@string/action_settings" 
    android:showAsAction="never" /> 
</menu> 

MainActivity.javaonCreateOptionsMenu는 방법이다.

enter image description here

@Override 
    public boolean onCreateOptionsMenu(Menu menu) { 

     // Inflate the menu; this adds items to the action bar if it is present. 
     getMenuInflater().inflate(R.menu.main_activity_actions, menu); 
     return super.onCreateOptionsMenu(menu); 
    } 

나는이 문제의 원인을 배우고 싶다.

+0

당신이 볼 오버 플로우와 스크린 샷을 제공 할 수 Menu Resource에 대한 자세한 내용을보실 수 있습니다? –

+3

이것은 그 질문의 중복처럼 보이지 않습니다 ... – adamdport

답변

48

지원 AppCompat ActionBar 라이브러리와 ActionBarActivity를 사용하는 경우 ActioBarSherlock 또는 기본 ActionBar에서 xml 메뉴를 만드는 표준 방식과 다른 방식으로 메뉴를 만들어야하기 때문입니다. 문제가 해결

<menu xmlns:android="http://schemas.android.com/apk/res/android" 
     xmlns:app="http://schemas.android.com/apk/res-auto"> 
     <item android:id="@+id/action_search" 
      android:icon="@drawable/ic_action_search" 
      android:title="@string/action_search" 
      app:showAsAction="always" /> 
     <item android:id="@+id/action_compose" 
      android:icon="@drawable/ic_action_compose" 
      android:title="@string/action_compose" 
      app:showAsAction="always"/> 
</menu> 
+4

이 동일한 문제를 가진 다른 사람에게는 XML 정의의 맨 위에있는 'xmlns'네임 스페이스가 중요합니다. – MarcF

+0

@MarcF - 왜 중요합니까 ?? – Anjum

+0

@Anjum - 선언이 없으면 내게 효과가 없을 것입니다. 아마도 다른 누군가에게 명백했을 지 모르지만 당시 나는 그렇지 않았습니다. – MarcF

8

하지만, 내가 더 많은 정보와 답변을 게시 나중에 누군가에 의해 도움이 찾을 수 있습니다 보자

그래서이 코드를보십시오. showAsAction 어떤 값 중 하나를 수행 할 수 있습니다 :

이제 문제는 동작 버튼이 항상 표시 한 후 android:showAsAction="always"

가 참고로, 안드로이드는 사용 해보고 싶어요 아닌 경우, android:showAsAction="ifRoom"android:showAsAction="never"을 사용하고있다

android : showAsAction = [ "ifRoom"| "결코"| "withText"| "항상"| "collapseActionView"]

enter image description here

당신은

관련 문제