菜单没有显示

时间:2016-05-05 10:07:25

标签: android menu indexoutofboundsexception

   public void showPopupMenu(View v) {

        ArrayList<String> menuItem = new ArrayList<String>() ;
        PopupMenu popupMenu = new PopupMenu(this,v);
        MenuInflater inflater = popupMenu.getMenuInflater();
        inflater.inflate(R.menu.menu_size, popupMenu.getMenu());

        for(int i = 0; i < 30; i = i+2){
           // menuItem =
            popupMenu.getMenu().add(menuItem.get(i));
        }
        popupMenu.show();
    }

给出错误: java.lang.IndexOutOfBoundsException:索引0无效,大小为0

2 个答案:

答案 0 :(得分:1)

由于 menuItem 没有任何项目,因为你没有在其中添加任何内容,它会给出 java.lang.IndexOutOfBoundsException:索引0无效,大小为0

请先尝试添加一些项目。

答案 1 :(得分:0)

  

根据你的代码

 public void showPopupMenu(View v) {

   ArrayList<String> menuItem = new ArrayList<String>() ;
    PopupMenu popupMenu = new PopupMenu(this,v);
    MenuInflater inflater = popupMenu.getMenuInflater();
    inflater.inflate(R.menu.menu_size, popupMenu.getMenu());

    for(int i = 0; i < 30; i = i+2){
       // menuItem =
        popupMenu.getMenu().add(menuItem.get(i));
    }
    popupMenu.show();
}

menuItem 有垃圾值再次检查它们,这就是为什么它不起作用将一些数据添加到您的列表然后它会显示给您。