今天接触到了menu弹出框样式。主要就是在theme下进行调整。现在把接触到的知识点总结一下。

在theme中,跟menu有关的几个属性如下

<item name="panelBackground">@android:drawable/menu_panel_color_funui</item>
<item name="panelFullBackground">@android:drawable/menu_background_fill_parent_width</item>
<!-- These three attributes do not seems to be used by the framework. Declared public though -->
<item name="panelColorBackground">#000</item>
<item name="panelColorForeground">?android:attr/textColorPrimary</item>
<item name="panelTextAppearance">?android:attr/textAppearance</item> <item name="panelMenuIsCompact">true</item>
<item name="panelMenuListWidth">250dip</item>
<item name="panelMenuListTheme">@android:style/Theme.Funui.CompactMenu</item>

今天接触到的是一下几个

<item name="panelBackground">@android:drawable/menu_panel_color_funui</item>

决定的是menu弹出框的背景颜色。看效果

<item name="panelBackground">#0000ff</item>

结果

<item name="panelMenuListWidth">250dip</item>

决定的是弹出框的宽度
 看效果(“搜索“两个字位置)

<item name="panelMenuListWidth">100</item>

<item name="panelMenuListTheme">@android:style/Theme.Funui.CompactMenu</item>

这个主要是决定了弹出框的样式,包括每个Item的字体颜色跟大小,item之间分割线颜色,弹出框动画等。

它的内容如下

    <style name="Theme.Funui.CompactMenu">
<!-- Menu/item attributes -->
<item name="android:itemTextAppearance">@style/Email.Theme.Menu.TextAppearance</item>
<item name="android:listViewStyle">@style/Email.Theme.ListView.Menu</item>
<item name="android:windowAnimationStyle">@style/Email.Theme.Menu.Animation</item>
<item name="android:background">@null</item>
</style>

它几个属性如下

   <style name="Email.Theme.Menu.Animation" parent="@style/Animation.AppCompat.DropDownUp">
<item name="android:windowEnterAnimation">@anim/menu_enter_from_bottom</item>
<item name="android:windowExitAnimation">@anim/menu_out_from_bottom</item>
</style>

动画效果。不做解释

    <style name="Email.Theme.Menu.TextAppearance" parent="@style/Base.TextAppearance.AppCompat.Medium">
<item name="android:textSize">@dimen/panel_menu_text_size</item>
<item name="android:textColor">@color/panel_menu_text_color</item>
</style>

字体大小跟颜色,不解释

   <style name="Email.Theme.ListView.Menu" parent="@style/Base.Widget.AppCompat.ListView.Menu">
<item name="android:divider">@color/panel_listview_menu_divider_color</item>
</style>

分割线颜色,不解释

menu-普通menu弹出框样式的更多相关文章

  1. Jquery-UI实现弹出框样式

    需要引用 <link href="CSS/jquery-ui.custom.min.css" rel="stylesheet" /> <scr ...

  2. android自定义弹出框样式实现

    前言: 做项目时,感觉Android自带的弹出框样式比较丑,很多应用都是自己做的弹出框,这里也试着自己做了一个. 废话不说先上图片: 实现机制 1.先自定义一个弹出框的样式 2.自己实现CustomD ...

  3. hmtl弹出框样式

    @model Web.Manager.Models.SendMessage @{ ViewBag.Title = "消息发布"; Layout = null;} <link ...

  4. Android窗口为弹出框样式

    1.XML android:theme="@android:style/Theme.Dialog <?xml version="1.0" encoding=&quo ...

  5. Bootstrap弹出框(modal)垂直居中

    最近在做一个eit项目,由于此项目里面一些框架要遵循nttdata的一些规则,故用到了Bootstrap这个东东,第一次碰到这个东东,有很大抵触,觉得不好,但用起来我觉得和别的弹出框真没什么两样.废话 ...

  6. 弹出框JBox实例

    前几天做的考试系统的一些后台弹出框的一些模板.主要是因为普通的弹出框样式不是很好,颜色也不能调换.这里我们用的是JBox,还是从师傅那得知的.自己小实验了下,这里就做个小结. JBox 插件说明 - ...

  7. 四种常见的提示弹出框(success,warning,error,loading)原生JavaScript和jQuery分别实现

    原文:四种常见的提示弹出框(success,warning,error,loading)原生JavaScript和jQuery分别实现 虽然说现在官方的自带插件已经有很多了,但是有时候往往不能满足我们 ...

  8. javascript基于对象的弹出框封装

    先睹为快,移动端:戳这里,打开页面后点击投票查看效果.PC端测试直接切换body的overflow属性:hidden和auto一样可以,比下面相对简化,又有人说这样偶尔不行..如果你知道优缺点欢迎给出 ...

  9. js登录弹出框插件

    第一步:页面引入css:<link rel="stylesheet" type="text/css"" href="common/cs ...

随机推荐

  1. 轻松掌握Ubuntu Linux的3D桌面快捷键使用

    视频下载地址: http://115.com/file/be4n23v6#linux3d.rar 轻松掌握Ubuntu Linux的3D桌面快捷键使用 高级3D桌面展示 本文出自 "李晨光原 ...

  2. react 组件使用的小记第一天

    //定义一个子组件 var Child = React.createClass({ getInitialState: function() { return {liked: false}; }, ha ...

  3. JS数组去重的6种算法实现

    1.遍历数组法 最简单的去重方法,实现思路:新建一新数组,遍历传入数组,值不在新数组就加入该新数组中:注意点:判断值是否在数组的方法"indexOf"是ECMAScript5 方法 ...

  4. oracle基础入门(二)

    一:Oracle和plsql都安装成功 我们现在要链接自己本机Oracle 或者 远程服务器的Oracle 所有我们要找到tnsnames.ora 找到PLsql的 db_1我的地址F:oracle\ ...

  5. linux ifconfig找不到

    提示命令不存在 原因: 系统默认的环境变量设置不对 而,ifconfig恰恰就在/sbin里面. 下cat /etc/profile, 可以发现没有关于/sbin的环境变量. Linux,习惯用ged ...

  6. HDU 5281 Senior&#39;s Gun 杀怪

    题意:给出n把枪和m个怪.每把枪有一个攻击力,每一个怪有一个防御力.假设某把枪的攻击力不小于某个怪的防御力则能将怪秒杀,否则无法杀死.一把枪最多仅仅能杀一个怪,不能用多把枪杀同一个怪.每杀一次怪能够得 ...

  7. swift 创建第一个UIAlertView 和UIActionSheet

    //创建 UIActionSheet //一定要指明类型.不编译不通过 func ActionSheet(sender:UITapGestureRecognizer)     {         le ...

  8. centOS6.3(64bit)Hadoop的Eclipse开发环境搭建

    操作系统centos6.3(64位) 一个namenode 两个datanode Hadoop版本号:hadoop-1.1.2 Eclipse版本号:eclipse-standard-kepler-S ...

  9. js---11运算符,流程控制,真假

    <!DOCTYPE HTML> <html> <head> <meta http-equiv="Content-Type" content ...

  10. 用Vue+axios写一个实时搜索

    刚刚在学vue,试着写了一个实时搜索文件. 思路:1.input 通过v-model绑定.2.通过watch检测输入结果变化.3根据结果变化从api调用不同的数据. 代码如下: <!DOCTYP ...