2017-01-11 19 views
0

NavigationDrawerでメニューアイテムを動的に追加しています。新しく追加されたアイテムごとに一意のIDを付けたいこれを達成するには、既存のアイテムIDを確認する必要があります。androidのメニューグループ内のすべてのアイテムのIDを取得

これはどのように達成するのですか?またはこれを行うための他の方法がありますか?

layout.xml

<menu xmlns:android="http://schemas.android.com/apk/res/android">  
<group android:checkableBehavior="single" android:id="@+id/homes"> 
    <item 
     android:id="@+id/default_home" 
     android:title="My Home"/> 

    <item 
     android:id="@+id/add_home" 
     android:title="Add home" /> 
</group> 

Activity.java

final Menu menu = navigationView.getMenu(); 
    menu.add(R.id.homes,Menu.NONE,0,"MenuItem2"); // replace Menu.NONE with unique id 

答えて

0

なぜあなたは

MenuItem menuItem= menu.findItem(R.id.UNIQUE_ID); 
if(menuItem == null){ 
    //Add to navigation drawer 
} else { 
    //Generate new UNIQUE_ID and check again if that ID exists or not 
} 
0

は、ArrayListの作りでメニューアイテムを見つけようとしていません、 IDを追加するときNavigation Drawerで動的に、その時にidをarraylistに追加します。新しいIDを追加する場合は、リストを繰り返してチェックしてください。存在しない場合は追加し、追加しない場合はチェックしてください。

関連する問題