2013-01-03 41 views
6

經過參考了很多教程後,我才知道,他們有ActionBar代替Menu> API 10。但我正在使用API 7 sdk進行測試,我用Menusdrawable images顯示文本。但只有文本即將到來,並且在菜單選項中不會顯示可繪製的圖標圖像。請幫我解決這個問題。android123的菜單選項

XML

<?xml version="1.0" encoding="utf-8"?> 
<menu xmlns:android="http://schemas.android.com/apk/res/android" > 

    <!-- 
      Single menu item 
      Set id, icon and Title for each menu item 
    --> 
    <item 
     android:id="@+id/savedstory" 
     android:background="#000000" 
     android:minHeight="20dp" 
     android:title="Saved Stories"/> 
    <item 
     android:id="@+id/setting" 
     android:background="#000000" 
     android:minHeight="20dp" 
     android:title="Settings"/> 
    <item 
     android:id="@+id/Bookmark" 
     android:background="#000000" 
     android:minHeight="20dp" 
     android:title="Bookmark This"/> 
    <item 
     android:id="@+id/share" 
     android:background="#000000" 
     android:minHeight="20dp" 
     android:title="Share This"/> 
    <item 
     android:id="@+id/save" 
     android:background="#000000" 
     android:minHeight="20dp" 
     android:title="Save This"/> 
    <item 
     android:id="@+id/small" 
     android:icon="@drawable/font3" 
     android:minHeight="20dp"> 
This icon is not showing. 
      /> 
     <item 
      android:id="@+id/medium" 
      android:background="#ffffff" 
      android:minHeight="20dp" 
      android:title="Medium font"/> 
     <item 
      android:id="@+id/big" 
      android:background="#000000" 
      android:minHeight="20dp" 
      android:title="Big font"/> 
    </item> 

</menu> 

我的充氣代碼:

public boolean onCreateOptionsMenu(Menu menu) { 
    MenuInflater menuInflater = getMenuInflater(); 
    menuInflater.inflate(R.menu.newsdescriptionmenu, menu); 
    return true; 
} 

回答

2

如果你指的Menu documentation

選項菜單:圖標菜單不支持的項目檢查標記並且只有 sh該項目的簡明標題。擴展菜單(如果有6個或更多菜單項可見,只有 可用,通過 圖標菜單中的「更多」項達到)不顯示項目圖標,並且不鼓勵項目選中標記 。

因爲我看不出你如何膨脹(哪些選項等),你的菜單,我只能假設你沒有看到這個項目的圖標,因爲它是第六項和後「更多」點擊展開的菜單。

+0

謝謝馬爾欽Gil..I已經更新了我的職務與通貨膨脹代碼.. – Subburaj

+0

是的,我得到了它..In擴張項目只有文本將不會是圖標..我是正確的。感謝了很多... – Subburaj

2

請檢查以下代碼段。

menu.xml文件

<?xml version="1.0" encoding="utf-8"?> 
<menu xmlns:android="http://schemas.android.com/apk/res/android" > 

    <item 
     android:id="@+id/Menu1" 
     android:orderInCategory="1" 
     android:title="Menu 1"/> 
    <item 
     android:id="@+id/Menu2" 
     android:orderInCategory="2" 
     android:title="Menu 2"/> 
    <item 
     android:id="@+id/Menu3" 
     android:orderInCategory="3" 
     android:title="Menu 3"/> 
    <item 
     android:id="@+id/submenu" 
     android:orderInCategory="4" 
     android:title="Sub menu"> 
     <menu> 
      <item 
       android:id="@+id/submenu1" 
       android:title="Sub menu 1"/> 
      <item 
       android:id="@+id/submenu2" 
       android:title="Sub menu 2"/> 
     </menu> 
    </item> 

</menu> 

添加這些線路在Activity Class

public class MenuActivity extends Activity { 
    /** Called when the activity is first created. */ 
    @Override 
    public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.main); 
    } 
    public boolean onCreateOptionsMenu(Menu menu) { 
    new MenuInflater(getApplication()).inflate(R.menu.menu, menu); 
    return(super.onPrepareOptionsMenu(menu)); 
    } 

    public boolean onOptionsItemSelected(MenuItem item) { 
    switch (item.getItemId()) { 
    case R.id.Menu1: 
     Toast.makeText(this, "Menu 1", Toast.LENGTH_SHORT).show(); 
    break; 
    case R.id.Menu2: 
     Toast.makeText(this, "Menu 2", Toast.LENGTH_SHORT).show(); 
    break; 
    case R.id.Menu3: 
     Toast.makeText(this, "Menu 3", Toast.LENGTH_SHORT).show(); 
    break; 
    case R.id.submenu: 
     Toast.makeText(this, "Sub menu", Toast.LENGTH_SHORT).show(); 
    break; 
    } 
    return(super.onOptionsItemSelected(item)); 
} 
} 
+0

+1花了我的時間..謝謝.. – Subburaj

+0

<?xml version =「1.0」encoding =「utf-8」 ?>

itsrajesh4uguys

+0

如果使用上面的代碼,你可以設置drawable項 – itsrajesh4uguys