android 系统System UI Tuner大概讲解
16lz
2021-01-26
这两天修改android 6.0 的一个BUG,要求删掉下拉菜单里面的手电筒图标。 首先讲讲怎么进入的吧。相信这个大家在网上都已经找到过了。在android 6.0 之前是没有这个功能的。
打开的方法:通知栏拉到底,长按通知栏上面的设置图标,就是电池与个人中间的齿轮图标,大概5秒,
然后进入设置,就可以看到关于手机的下面多出了个System UI Tuner,打开后会看到提示这个功能将来会移除之类。然后就可以在设置里面进入这个界面对状态栏进行操作了。
这个是我们客户可以进行手动修改的地方,要是想在手机恢复出厂设置还是能够回到修改好的状态,就需要在相应的代码里面进行操作了。
这个界面的代码在路劲framework/base/package/apps/SystemUi下面:
在/src/com/android/systemui/tuner/TunerActivity.java里面开始跟进去:
public class TunerActivity extends Activity{ protected void onCreate(Bundle savedInstanceState){ super.onCreate(savedInstanceState); getFragmentManager().beginTransaction().replace(android.R.id.content,new TunerFragment()); }}
调用了TunerFragment.java类,这个类继承的是fragment,首先就要看看这个类里面加载的布局文件, 通过代码可知当我们点击快速设置这个按钮的时候替换成QsTuner.java这个类里面去处理了。继续跟进到QsTuner.java里面。
在这个类里面的方面里面我们看到了加载了他的布局文件和相关的操作,通过addView(mQsPanel)方法我们看到了加载了mTitleHost变量,然后加载CustomHost()函数
在这段代码里面我们看见这个函数继承自QsTitleHost,然后我们进入这个类里面看看
在这个类里面我们看见有一个创建这些变态的函数,在这个里面加载了所有显示状态栏上面的内容,只需要将相应的删除或者注释掉即可。但是在System UI Tuner里面的那个图标还是存在的,只是状态栏里面没有了而已。 要是有什么不对的地方欢迎大家提出来,谢谢
更多相关文章
- 安卓使用 xml 文件代替普通位图图标
- Android开发笔记(一)像素的单位
- Android中常见的流式布局的使用
- android volley解析与二次封装
- mono for android 第三课--页面布局
- Android(安卓)webview加载https链接错误或无响应
- ListView分页加载数据
- Android加载Bitmap出现OutofMemoryError的原因(官方译文)
- Android设置ProgressBar的前景和背景及其在多线程中的刷新