5.1以后的searchView 风格调整属性相比于4.4有了些更改。我们先看代码

    <style name="DeskClock.Theme" parent="android:style/Theme.Funui">
<item name="android:statusBarColor">@color/alarm_actionbar</item><item name="android:actionBarTheme">@style/DeskClock.Theme.ThemeOverlay</item><item name="android:searchViewStyle">@style/DeskClock.Theme.SearchView</item></style><style name="DeskClock.Theme.SearchView" parent="@*android:style/Widget.Funui.SearchView"><item name="android:queryBackground">@drawable/search_view_text_field</item><item name="android:submitBackground">@drawable/search_view_text_field</item><item name="android:closeIcon">@drawable/search_view_close</item><item name="android:searchIcon">@drawable/citiy_search</item></style><style name="DeskClock.Theme.ThemeOverlay" parent="@*android:style/ThemeOverlay.Funui.ActionBar"><item name="android:searchViewStyle">@style/DeskClock.Theme.SearchView</item>
</style>

我们会看到,在theme里面,其实是有两个地方同时引用了searchView的。一个是在theme下直接使用

searchViewStyle

引用的,还有一个就是通过了

actionBarTheme

间接引用的。那他们两个有什么区别呢

1.actionBarTheme:它决定的是整个activity 中,存在于actibar上的 searchView 的属性

2.searchViewStyle:它决定的是整个searchview的属性,只不过它的优先级会低于actionbar中的searchview,两者同时存在的时候,actionbar上的searchview会发生效果

接下来我们来看一下searchviewStyle里面的属性

    <style name="Widget.Material.SearchView">
<item name="layout">@layout/search_view</item>
<item name="queryBackground">@drawable/textfield_search_material</item>
<item name="submitBackground">@drawable/textfield_search_material</item>
<item name="closeIcon">@drawable/ic_clear_material</item>
<item name="searchIcon">@drawable/ic_search_api_material</item>
<item name="searchHintIcon">@drawable/ic_search_api_material</item>
<item name="goIcon">@drawable/ic_go_search_api_material</item>
<item name="voiceIcon">@drawable/ic_voice_search_api_material</item>
<item name="commitIcon">@drawable/ic_commit_search_api_material</item>
<item name="suggestionRowLayout">@layout/search_dropdown_item_icons_2line</item>
</style>

属性介绍

1.layout-搜索框样式布局(可以自定义)

2.searchIcon-搜索框搜索按钮(点击以后调出搜索框)

3.queryBackground-搜索框背景

4.searchHintIcon-当搜索框没有输入内容的时候,显示在搜索框内的那个搜索图片

5.closeIcon-清空搜索框内容的那个按钮

其他的还不清楚,以后遇到在研究


searchView-风格调整的更多相关文章

  1. scroll- 滑动条风格调整

    <item name="scrollbarFadeDuration">250</item> <item name="scrollbarDef ...

  2. android-Preference 风格调整

    <CheckBoxPreference android:defaultValue="false" android:layout="?android:attr/pre ...

  3. MFC使用的风格(CButton, CEdit, CStatic, CWnd等等)

    风格 描述按钮风格 应用于CButton类对象,例如单选框.复选框和按钮.在CButton::Create的dwStyle参数中设置一个组合的风格.组合框风格 应用于CComboBox类对象.在CCo ...

  4. C# winform 界面美化技巧(扁平化设计)

    关于C#界面美化的一些小技巧 在不使用第三方控件如 IrisSkin 的前提下,依然可以对winform做出让人眼前一亮的美化 首先,我们先来实现主界面的扁平化 此处分为两个步骤,第一步是更改winf ...

  5. oracle 学习

    一.数据库语言部分1. SQL语言:关系数据库的标准语言2. PL/SQL:过程化语言Procedural Language3. SQL*Plus:简单的报表,操作系统接口 4. Oracle 8.0 ...

  6. 终端环境之tmux

    今天继续介绍我的终端环境,tmux. why tmux? 用一个工具的第一问自然还是为什么要用.其实当时使用tmux的原因很简单.工作中经常需要长时间的编译.总想要下班后要关机的情况下,(肯定有人问我 ...

  7. 10个 iOS 用户暂可以嘲笑 Android 的特点

    Android 与 iOS 设备之间的争斗从未停止,毕竟一切高科技产品的理念和实际表现方式都不相同.就拿 Android 来说,很多功能令用户并 不太开心,甚至是令人愤怒,下面让我们来简单的盘点 10 ...

  8. 把Ubuntu打造成Mac Macbuntu

    Macbuntu:把 Ubuntu 一键打造成完整的 Mac 风格 23八 2010 # 作者:riku/ 本文采用CC BY-NC-SA 2.5协议授权,转载请注明本文链接. Macbuntu 是一 ...

  9. Swift流程控制之循环语句和判断语句详解

    Swift提供了所有c类语言的控制流结构.包括for和while循环来执行一个任务多次:if和switch语句来执行确定的条件下不同的分支的代码:break和continue关键字能将运行流程转到你代 ...

随机推荐

  1. 【模板】2-SAT 问题(2-SAT)

    [模板]2-SAT 问题 题目背景 2-SAT 问题 模板 题目描述 有n个布尔变量 \(x_1\)​ ~ \(x_n\)​ ,另有m个需要满足的条件,每个条件的形式都是" \(x_i\) ...

  2. TortoiseGit 弹出 git@xxx.com's password 对话框

    安装完 tortoise git,用它克隆项目的时候,一直弹出git@xxx.com's password 对话框 解决的办法是,将ssh客户端默认的路径,换为git 安装目录下ssh.exe的路径就 ...

  3. oc数据类型分类

    OC数据类型能够分为 基本类型.构造类型.指针类型.空类型 基本类型可分为 整型.字符型.枚举型.浮点型(float类型.double类型) 构造类型可分为 数组类型.结构体类型.公用体类型 指针类型 ...

  4. @Transactional 事务注解

    @Transactional(propagation = Propagation.REQUIRED, isolation = Isolation.SERIALIZABLE, rollbackFor = ...

  5. Ubuntu16.04+Gnome3 锁定屏幕快捷键无效解决办法

    Ubuntu16.04 桌面环境通过Ubuntu server和后安装的Gnome3 桌面环境实现,安装完以后发现锁定屏幕快捷键无效,系统设置=>键盘=>快捷中 锁屏快捷键已经存在Supe ...

  6. React-router 4 总结

    React-Router 4: BrowserRouter包裹整个应用 Router路由对应渲染的组件,可嵌套 Link跳转专用 首先 然后 其他组件: url参数 Route组建参数可用冒号标识参数 ...

  7. JSP页面的静态包含和动态包含的区别与联系

    JSP中有两种包含: 静态包含:<%@include file="被包含页面"%> 动态包含:<jsp:include page="被包含页面" ...

  8. 10G安装DataGuard

    最后更新时间:2013年8月4日,星期日 ★ oracle 10G安装环境 数据库软件安装环境不详细描述,网上到处有这方面资料,下面只简单描述下. 也可参考官方文档: http://docs.orac ...

  9. Android学习总结(2)——App客户端与服务器交互中的token

    学习Token Token是什么? Token是服务端生成的一串字符串,以作客户端进行请求的一个令牌,当第一次登录后,服务器生成一个Token便将此Token返回给客户端,以后客户端只需带上这个Tok ...

  10. codeforces 543 C Remembering Strings

    题意:若一个字符串集合里的每一个字符串都至少有一个字符满足在i位上,仅仅有它有,那么这个就是合法的,给出全部串的每一个字符修改的花费,求变成合法的最小代价. 做法:dp[i][j].前i个串的状态为j ...