大橙子网站建设,新征程启航
为企业提供网站建设、域名注册、服务器等服务
这篇文章主要介绍“怎么解决Android Studio运行后无法显示小图标”,在日常操作中,相信很多人在怎么解决Android Studio运行后无法显示小图标问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”怎么解决Android Studio运行后无法显示小图标”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!
创新互联建站主营武隆网站建设的网络公司,主营网站建设方案,成都APP应用开发,武隆h5小程序制作搭建,武隆网站营销推广欢迎武隆等地区企业咨询
提出问题
我做的是一个通讯录,用到了选项菜单,每一个菜单项左边我都添加了一个小图标,运行后发现没有显示出来。
解决方案
利用反射机制,根据对象来寻找类,再根据类来找方法,在显示菜单选项的Activity中复写onMenuOpened方法:
@Override public boolean onMenuOpened(int featureId, Menu menu) { if(menu!=null){ if(menu.getClass().getSimpleName().equalsIgnoreCase("MenuBuilder")){ try { Method method=menu.getClass().getDeclaredMethod("setOptionalIconsVisible",Boolean.TYPE); method.setAccessible(true); method.invoke(menu,true); } catch (NoSuchMethodException e) { e.printStackTrace(); } catch (IllegalAccessException e) { e.printStackTrace(); } catch (InvocationTargetException e) { e.printStackTrace(); } } } return super.onMenuOpened(featureId, menu); }
我解释一下,因为设置图标显示这个方法是不可访问的(private),所以我们才会这么麻烦要用到反射机制来显现图标。
代码我也解释一下,我们用menu对象来反射MenuBuilder
这个类,看这个类有没有。得到这个类以后,再通过这个类得到它的方法,这个方法叫setOptionalIconsVisible
,这个是要自己打出来的,这个方法它是Boolean类型的。因为这个方法是私有的,所以我们要把不可访问设置为可访问的。最后我们调用method.invoke
设置true后将图标变为可见的。
修改之后
好了,到这里我们的图标就显示成功啦!
总结
到此,关于“怎么解决Android Studio运行后无法显示小图标”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注创新互联网站,小编会继续努力为大家带来更多实用的文章!