2016-08-21 52 views
0

我想添加一个项目从数组导航到绘图子菜单。但我不能。我在这里的代码ISE导航绘制子菜单数组错误

> private void addItemsRunTime(NavigationView navigationView) { 

    //adding items run time 
    final Menu menu = navigationView.getMenu(); 
    for (int i = 1; i <= 3; i++) { 
     menu.add("Runtime item "+ i); 
    } 

    //stringArray[0]="Selam"; 
    //stringArray[1]="Merhaba"; 
    //stringArray[2]="Merhaba"; 
    //stringArray[3]="Merhaba"; 

    // adding a section and items into it 
    final SubMenu subMenu = menu.addSubMenu("SubMenu Title"); 
    for (int i = 0; i <= sayaca; i++) { 
     subMenu.add("SubMenu Item " + i); 
    } 

    // refreshing navigation drawer adapter 
    for (int i = 0, count = mNavigationView.getChildCount(); i < count; i++) { 
     final View child = mNavigationView.getChildAt(i); 
     if (child != null && child instanceof ListView) { 
      final ListView menuView = (ListView) child; 
      final HeaderViewListAdapter adapter = (HeaderViewListAdapter) menuView.getAdapter(); 
      final BaseAdapter wrapped = (BaseAdapter) adapter.getWrappedAdapter(); 
      wrapped.notifyDataSetChanged(); 
     } 
    } 
} 

当我改变我的代码是这样 “的for(int i = 0;我< = myArray.length;我++)” 它给了我和我的error.and应用程序被关闭。消息在这里。

enter image description here

数组是工作的其他功能。但在这现在工作。

感谢您的帮助。

回答

0

它会抛出您的myarray.length异常尝试将其保存在变量中,然后使用该变量。

+0

你能写一个示例代码吗?它将如何? –

+0

int index = myArray.length; for(int i = 0; i <= index-1; i ++) –

0

你做错了事情,你必须循环从0到n-1的值,然后你的错误将被解决,因为数组的最后一个元素总是在第(n-1)个位置,所以只需改变,如

for (int i = 0; i <= myArray.length-1; i++) 
+0

我试过了。但同样的问题仍然继续.. –

+0

为导航抽屉项目我建议使用这些https://github.com/mikepenz/MaterialDrawer –