【问题标题】:Android/Java: How to add icon in my bottom bar dynamicallyAndroid/Java:如何在我的底栏中动态添加图标
【发布时间】:2020-09-01 14:32:30
【问题描述】:

我想在底部栏中动态添加图标,方法是将其放入包含所有图标图像的文件夹的文件路径中(以避免每次都编译应用程序)。我找到了这个ticket,但我真的不明白如何适应它......

   @Override
    public void run() {
        Menu menu = bottomNavigation.getMenu();
        if (menu.size() == 0) {
            MenuMap = new ArrayMap<String, Integer>();
            for (int i = 0; i < myitems_detail.length(); i++) {
                try {
                    JSONObject obj = myitems_detail.getJSONObject(i);
                    if (obj.getString("ICONE") != null) {
                        int imgID = mContext.getResources().getIdentifier(obj.getString("ICONE"), "drawable", mContext.getPackageName());
                        MenuItem myItem = menu.add(0, obj.getInt("PAGE_ORDER"), 0, obj.getString("MENU_NAME"))
                                .setIcon(imgID);

                        MenuMap.put(obj.getString("MENU_NAME"), obj.getInt("id"));

                    }
                } catch (JSONException e) {
                    e.printStackTrace();
                }
            }

        }
    }

有什么想法吗? 提前致谢。

【问题讨论】:

    标签: java android icons android-navigation-bar


    【解决方案1】:

    我认为这对你有用 但是这种情况下你必须输入文件的完整路径也可以使用它的任何 Web URL

     Uri filePath = null;
    

    在此处传递网址 或者

     filePath = Uri.parse("String file location or url");
    
            Bitmap myBitmap = MediaStore.Images.Media.getBitmap(getContentResolver(), filePath);
            myMenuItem.setIcon(new BitmapDrawable(getResources(), myBitmap));
    

    【讨论】:

      猜你喜欢
      • 2019-10-22
      • 1970-01-01
      • 2018-02-07
      • 1970-01-01
      • 1970-01-01
      • 2011-09-10
      • 1970-01-01
      • 1970-01-01
      • 2012-11-16
      相关资源
      最近更新 更多