微信6.0的ActionBar比较简洁只有一个搜索框和一个溢出(overflow)菜单。这个溢出菜单可以看到不是默认的,而是一个“+”号图标。
并且溢出菜单中点击,里面的隐藏菜单图标可以显示出来。(系统默认是不显示的)
文章主要分三部分:
一.主要介绍:如何高仿微信6.0ActionBar;
1.溢出菜单不显示
2.自定义溢出菜单的图标样式
3.隐藏图标的显示。
二.取巧的方法;
三.用PopupWindow实现自定义溢出(overflow)菜单;
一.如何高仿微信6.0ActionBar
错误提示:第一次做时,犯了个错误,就是当我们创建MainActivity时,要让它去继承FragmentActivity,否则ActionBar就会出现异常情况!!!
1.在模拟器中,大家可以发现overflow是显示不出来的,我们可以通过反射的原理从新配置参数。然后再onCreate()方法中调用此方法。
private void setOverflowButtonAlways()
{
try
{
ViewConfiguration config = ViewConfiguration.get(this);
Field menuKey = ViewConfiguration.class
.getDeclaredField("sHasPermanentMenuKey");
menuKey.setAccessible(true);
menuKey.setBoolean(config, false);
} catch (Exception e)
{
e.printStackTrace();
}
}
如果,想要在ActonBar中的图标不显示,在onCreate()方法中,配置如下:
getActionBar().setDisplayShowHomeEnabled(false);
2.自定义溢出菜单的图标样式
如果你的API在14+.那么是在你的values-14中的styles.xml中配置如下:
<span style="font-size:18px;"> <style name="AppBaseTheme" parent="android:Theme.Holo.Light.DarkActionBar">
<!-- API 14 theme customizations can go here. -->