Мне нужно установить значок меню программно (не через файл макета), а также мне нужно загрузить файл значка из файла: /// android_asset / (Не загружать как скомпилированный Drawable). Я обнаружил, что размер отображаемой иконки относительно меньше. Похоже, Android изменить его размер или что-то, и я не хочу достичь того же эффекта без кода.
Как вы можете видеть на прилагаемом снимке экрана, меню «глобус-36», «глобус-48» и «глобус-72» заполняется с использованием кода, похожего на код, и их изображения имеют размеры 36х36, 48х48 и 72х72: (Это способ, которым я загружаю свой значок в свое приложение, я должен)
MenuItem mi = menu.add(Menu.NONE, i++, i++, icon);
Drawable d = Drawable.createFromStream(getAssets().open(icon + ".png"), icon);
mi.setIcon(d);
И, меню «глобус-aset» и «штрих-код актив» заполняются как:
MenuItem mi = menu.add(Menu.NONE, i++, i++, "globe-asset");
mi.setIcon(R.drawable.globe);