首页 > 代码库 > Android6.0状态栏(系统下拉状态栏的定制)
Android6.0状态栏(系统下拉状态栏的定制)
■目标
不允许用户从上到下下拉状态栏
■案1
截获手势,不处理该手势。
SystemGesturesPointerEventListener
public void onPointerEvent(MotionEvent event) {
if (swipe == SWIPE_FROM_TOP) {
不调用手势处理}
■案1效果
无效果。
adb log发现代码确实走到了,说明这里只是一个通知机制。
■案2
在状态栏上进行中断手势或者touch命令
StatusBarWindowView的onInterceptTouchEvent方法实现进行修正,直接返回true。
■案2效果
符合预期
■状态栏知识点总结
家庭: 属于SystemUI级别。是特殊的系统级别的UI组件。SystemUI = 状态栏+底部导航栏+近期APP列表+截屏操作+电量警告等等
载体: 以APK形式存在
生命开始: AMS.systemReady()方法系统就绪后,startSystemUi
2兄弟布局: PhoneWindowManager.mHasSystemNavBar 状态栏与导航栏分离(PhoneStatusBar) vs 状态栏与导航栏合体(TabletStatusBar)
1儿子: BaseStatusBar 借助IStatusBarService处理请求 createAndAddWindows(各兄弟自己实现布局单元)
http://blog.csdn.net/yin1031468524/article/details/51532663
https://wizardforcel.gitbooks.io/deepin-android-vol3/content/7.html
adb logcat PanelBar:D PhoneStatusBar:D WindowManager:D *:S
adb logcat WifiHW:D *:S
SystemGesturesPointerEventListener
Android6.0状态栏(系统下拉状态栏的定制)