设置ActionBar menu文字的属性

来源:互联网 发布:用户体验 知乎 编辑:程序博客网 时间:2024/04/28 12:36

前段时间使用ActionBar 做了一个应用,使用到了support  v7 这个包,这个包比原来的support  v4 要强大的多,这里就不讲书怎么引用support  v7 这个包了 ,进入主题我在ActionBar中要使用一个menu.xml布局文件来展示标题文字,但是menu.xml文件中 没有对文字的属性设置,然后找到,support  v7的style文件,在里面发现一个父类style是Theme.AppCompat.Light.DarkActionBar,然后找到这个style的父类是Base.Theme.AppCompat.Light.DarkActionBar

在源文件中是这么显示的,这个源文件的文件名是themes.xml,


然后按住ctrl键,按住鼠标左键,继续找Base.Theme.AppCompat.Light.DarkActionBar的父类是Base.Theme.AppCompat.Light.DarkActionBar


这个xml文件的名字叫themes_base.xml ,这个xml文件中定义了很多style,滚动鼠标往下看,你会发现下面这个style,



就是我图上画出来的那个,这个就是support v7 中menu.xml 文件字体的格式,然后打开


看到没有,这个的父类是Base.TextAppearance.AppCompat.Widget.ActionBar.Menu,毫不犹豫的打开,Base.TextAppearance.AppCompat.Widget.ActionBar.Menu,接下来就是见证奇迹的时刻,看看Base.TextAppearance.AppCompat.Widget.ActionBar.Menu里面是怎么写的,


你会惊奇的发现,这里有了对字体的设置,默认大小是12sp,找到他就好了,下面我们就可以修改我们想要的字体了,注意,我们不是这个文件里面修改,

我把它拿出来是为了让你看一下suooprt   v7中的源码是怎么写的,好了回到我们自己项目中的style.xml文件中

我们开始写自己要的样式

我写了一个ActionMenuText,他的父类是,TextAppearance.AppCompat.Widget.ActionBar.Menu,

  <style name="ActionMenuText" parent="TextAppearance.AppCompat.Widget.ActionBar.Menu">
        <item name="android:textSize">16sp</item>
        <item name="android:textStyle">normal</item>
    </style>


代码和截图都在上面了,然后我们引用,ActionMenuTest,这个样式就可以了,


这里我为了整个项目中所有的ActionBar中的menu的文字都是我要的那种字体,所以就设置在了,AppThene中,然后我们引用AppTheme这个样式,那么我们整个的项目都会是一样的,你也可以根据你的需要设置不同的Activity,当然这就根据你的需求了,这里我就不再赘述了,

下面我们来引用TppTheme,在Androidmainfirst.xml文件中的,application中设置一下样式


好了,这就完成了,然后运行一下就可以看到效果了。如果有不明白的,可以qq联系我,2192668205,注意要写备注哟吐舌头



0 0
原创粉丝点击