您的位置:首页 > 其它

menu不显示icon图标的问题

2017-04-17 13:27 393 查看
Android系统中默认的menu只显示标题,不显示图标,可通过 反射 解决。

@Override
public boolean onCreateOptionsMenu(Menu menu) {
super.onCreateOptionsMenu(menu);
getMenuInflater().inflate(R.menu.menu_chart,menu);
setIconsVisible(menu,true);
return true;
}

/**
* 解决不显示menu icon的问题
* @param menu
* @param flag
*/
private void setIconsVisible(Menu menu, boolean flag) {
//判断menu是否为空
if(menu != null) {
try {
//如果不为空,就反射拿到menu的setOptionalIconsVisible方法
Method method = menu.getClass().getDeclaredMethod("setOptionalIconsVisible", Boolean.TYPE);
//暴力访问该方法
method.setAccessible(true);
//调用该方法显示icon
method.invoke(menu, flag);
} catch (Exception e) {
e.printStackTrace();
}
}
}


内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: