Android R锁屏界面屏蔽下拉状态栏

Posted 虫师魁拔

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android R锁屏界面屏蔽下拉状态栏相关的知识,希望对你有一定的参考价值。

修改文件:

frameworks/base/packages/SystemUI/src/com/android/systemui/statusbar/phone/NotificationPanelViewController.java

    private boolean handleQsTouch(MotionEvent event) 
        ... ...
        // 增加 mUnallowedState 属性屏蔽状态栏下滑的Touch事件
        if (!mQsExpandImmediate && mQsTracking && mUnallowedState) 
            onQsTouch(event);
            if (!mConflictingQsExpansionGesture) 
                return true;
            
        
        if (action == MotionEvent.ACTION_CANCEL || action == MotionEvent.ACTION_UP) 
            mConflictingQsExpansionGesture = false;
        
        ... ...
    

    private void setQsExpansion(float height) 
        // 增加 mUnallowedState 判断禁止对状态栏布局的设置
        if (mUnallowedState) 
            return;
        
        // end
        height = Math.min(Math.max(height, mQsMinExpansionHeight), mQsMaxExpansionHeight);
        mQsFullyExpanded = height == mQsMaxExpansionHeight && mQsMaxExpansionHeight != 0;
        ... ...
    


    @Override
    protected TouchHandler createTouchHandler() 
        return new TouchHandler() 
            @Override
            public boolean onInterceptTouchEvent(MotionEvent event) 
                ... ...
                if (!shouldQuickSettingsIntercept(mDownX, mDownY, 0)
                        && mPulseExpansionHandler.onInterceptTouchEvent(event)) 
                    return true;
                

                // 增加 mUnallowedState 拦截事件分发到子VIEW通知消息栏中,屏蔽通知栏左右滑动等
                if (mUnallowedState && !isFullyCollapsed() && onQsIntercept(event)) 
                    return true;
                
                return super.onInterceptTouchEvent(event);
            
       

以上是关于Android R锁屏界面屏蔽下拉状态栏的主要内容,如果未能解决你的问题,请参考以下文章

Android 系统锁屏实现固件升级动画

android 滑动锁屏状态下如何禁止下拉状态栏

android——禁止状态栏下拉

Android 7.1.1 锁屏界面启动流程

android4.4上全屏界面实现禁止状态栏下拉

手机不能下滑控制面板