Android 11.0 在全部应用界面下,实现键盘↓键可以下移效果

frameworks/base/core/java/android/view/ViewRootImpl.java

private boolean performFocusNavigation(KeyEvent event) {
    
    
 switch (event.getKeyCode()) {
    
    
                case KeyEvent.KEYCODE_DPAD_LEFT:
                    if (event.hasNoModifiers()) {
    
    
                        direction = View.FOCUS_LEFT;
                    }
                    break;
                case KeyEvent.KEYCODE_DPAD_RIGHT:
                    if (event.hasNoModifiers()) {
    
    
                        direction = View.FOCUS_RIGHT;
                    }
                    break;
                case KeyEvent.KEYCODE_DPAD_UP:
                    if (event.hasNoModifiers()) {
    
    
                        direction = View.FOCUS_UP;
                    }
                    break;
+                case KeyEvent.KEYCODE_DPAD_DOWN:
+                    //wangrui For Settings.apk, let the ↓ key have the function of selecting the first-level directory. In other cases, the ↓ key will be performed in the default way.
+                    if (!("com.android.settings".equals(cn.getPackageName()))){
    
    
+                        if (event.hasNoModifiers()) {
    
    
+                            direction = View.FOCUS_DOWN;
+                        }
+                        break;
+                    }
                case KeyEvent.KEYCODE_TAB:
                    if (event.hasNoModifiers()) {
    
    
                        direction = View.FOCUS_FORWARD;
                    } else if (event.hasModifiers(KeyEvent.META_SHIFT_ON)) {
    
    
                        direction = View.FOCUS_BACKWARD;
                    }
                    break;
            }
}

我是王睿丶,加入我的Q群:901440630,欢迎一起讨论安卓技术!

猜你喜欢

转载自blog.csdn.net/qq_27494201/article/details/125080340