2017-06-11 11 views
-4

私はinflate私の最初のメニューActivityに行くつもりです。メニューを膨らませることができません

@Override 
public boolean onCreateOptionsMenu(Menu menu) { 
    MenuInflater inflater = getMenuInflater(); 
    inflater.inflate(R.menu.main, menu); 
    return true; 
} 

R.menu.main:

<item 
    android:id="@+id/action_serach" 
    android:title="Search" 
    android:orderInCategory="100" 
    android:icon="@drawable/ic_search" 
    app:showAsAction="ifRoom" /> 

それは動作しませんが、それはR.menu.menu_homeという名前の別のXMLファイルを膨張させます。 R.menu.menu_home:

<menu 
xmlns:android="http://schemas.android.com/apk/res/android" 
xmlns:app="http://schemas.android.com/apk/res-auto"> 
<item 
android:id="@+id/action_star" 
android:title="Search" 
android:orderInCategory="100" 
android:icon="@drawable/ic_star_half" 
app:showAsAction="ifRoom" 
    /> 
</menu> 

しかし、それはR.menu.mainR.menu.menu_homeのかどうか、私の第二Activity、それは動作しますが、インチ なぜですか?

答えて

0

私は活動の断片とでframeLayoutを交換し、onCreateOptionsMenu()メソッドがフラグメントであるので、私はこのproblem.It年代を解決しています。

1

私は問題は、あなたが前に@Overrideを追加するクラスメソッドをオーバーライドする必要があると思います。 Hereオーバーライドアノテーションの詳細を表示できます。

+0

これは動作しません:( – zhan

+0

メニューの名前を変更した場合、または同じ内容の新しいxmlメニューファイルを作成した場合はどうなりますか? –

+0

名前を変更するとメニューを作成したり、同じ内容の新しいXMLメニューファイルを作成したりすると、プレビューXMLファイルが膨張します。 – zhan

-2

このコードを使用してください。

@Override 
public boolean onCreateOptionsMenu(Menu menu) { 
    MenuInflater inflater = getMenuInflater(); 
    inflater.inflate(R.menu.main, menu); 
    return true; 
} 
関連する問題