最近有个需求: 勾选"永久隐藏工具栏"时,要求导航栏隐藏,状态栏不隐藏。
一. 源码中找到/packages/apps/Settings/src/com/android/settings/DisplaySettings.java:
可以看到勾选"永久隐藏工具栏"时发送了个广播,
@Override
public boolean onPreferenceTreeClick(PreferenceScreen preferenceScreen, Preference preference) {
if(preference == mSystemBarHide)
{
if(mSystemBarHide.isChecked()){
Intent i = new Intent("com.cdhx.removebar");
getActivity().sendBroadcast(i);
} else {
Intent i = new Intent("com.cdhx.addbar");
getActivity().sendBroadcast(i);
}
}
return super.onPreferenceTreeClick(preferenceScreen, preference);
}
二. 在/frameworks/base/packages/SystemUI/src/com/android/systemui/statusbar/phone/PhoneStatusBar.java:
2.1.