Android7.1.1之去掉workspace顶部的快速搜索条Qsb
来源:互联网 发布:网络错误651调制解调器 编辑:程序博客网 时间:2024/06/17 00:45
Qsb
Android7.1.1里的Qsb是Quick search bar的缩写,位于workspace第一屏的顶部,主要是打开google浏览器搜索,但是现在国内的android手机不支持使用google浏览器或者对当下许多消费者来说这个控件是没什么大用的,而且主要是当前项目的需求要的是直接显示应用列表,去掉主界面,所以去掉这个Qsb势在必行。
Layout Inspector
我们如何找到需要修改的位置呢?可能很多人都知道使用Hierarchyviewer这个UI优化工具看控件id进而找到控件所在位置,但是Android studio2.2之后推出了一个新的Android布局分析工具Layout Inspector,它位于Tools/Android/菜单目录下,找到并打开它,如下
开始-find
从上面的布局分析工具可知该控件来自于自定义View类QsbBlockerView和QsbContainerView
接下来有两种方式来找哪些资源文件用到了这两个类
法一:com.android.launcher3找到这两个类,分别右击鼠标选择Find Usages,就可看到两个资源文件qsb_blocker_view.xml和qsb_container.xml
法二:Git Bash窗口,根据命令grep -nr QsbBlockerView * 和 grep -nr QsbContainerView * 也可得
注意在QsbContainerView类中,有个getDefaultView()方法不容忽视,里面用到了qsb_default_view这个资源文件,所以qsb_container.xml这个容器实际的内容是qsb_default_view.xml中的内容
修改
找准位置,开始修改。
注释掉qsb_default_view.xml中的整个LinearLayout,之后QsbContainerView类中会出现错误,主要是跟qsb_default_view.xml里的两个资源id有关,注释掉关于R.id.btn_qsb_search和R.id.btn_qsb_setup的相关代码。
运行之:
虽然Qsb不再显示在workspace上,但长按workspace上的任意图标会看见最开始放Qsb的位置依然有一个灰色背景块存在,且不能拖进任何图标到该位置,如下图:
所以我们还需要找到设置这个灰色背景块的地方
针对qsb_blocker_view.xml、qsb_container.xml、qsb_default_view.xml这三个资源文件Find Usages一下,发现Workspace.java这个类中也有引用到,找到该位置,如下图:
经分析,注释掉一下代码块即可去掉灰色背景块,并能拖动或添加任何icon到该位置
运行之:
- Android7.1.1之去掉workspace顶部的快速搜索条Qsb
- 去掉scrollview顶部的灰条
- 去掉UIWebView顶部20点的空白条
- 去掉搜索条周围的黑色边框
- Android 去掉 Launcher3 里面默认的Google搜索条
- UIWebView顶部20点的空白条,和状态栏似的,终于去掉了
- 去掉Activity顶部的黑线
- 去掉Activity顶部的Lable
- 去掉actionbar顶部的阴影
- 去掉Eclipse中没用的workspace记录
- 去掉Eclipse中没用的workspace记录
- UISearchDisplayController点击搜索时屏幕顶部出现黑条问题的解决方案
- 搜索条 searcherBar 去掉灰色背景
- IAR的Workspace顶部下拉菜单中Debug和Release
- IAR的Workspace顶部下拉菜单中Debug和Release
- 去掉 UITableView 顶部的多余空间
- iOS 去掉tabbar顶部的横线
- android开发去掉顶部标题栏的方法
- 排序算法——冒泡算法及其优化
- cocos2dx 植物大战僵尸 1 简言创建关卡层
- 分布式架构学习之:Redis的linux安装与使用(单节点)
- SVG时钟
- html清除浮动的几种方式
- Android7.1.1之去掉workspace顶部的快速搜索条Qsb
- HP EVA8400删除VDISK后数据恢复过程
- win7(低版本显卡GeForce 610M)配置MatConvNet
- Java byte[]数组和十六进制String之间的转换Util
- WatchDog工作原理
- 设计模式(十三)--中介者模式
- FCC--Seek and Destroy(摧毁数组)
- cookie与session以及他们的常规用途——web开发必须熟知的知识
- Software RAID install partition command of kickstart