【问题标题】:Jetpack compose handle escape or back button?Jetpack 组合手柄转义或后退按钮?
【发布时间】:2022-09-27 19:26:32
【问题描述】:

如何在常规应用程序中正确处理键盘退出按钮?如果您遵循可访问性指南,它应该会触发后退导航。

以旧的 Android 方式处理如下:

class MainActivity: Activity 
... 
    override fun onKeyUp(keyCode: Int, event: KeyEvent?): Boolean {
        if (keyCode == KeyEvent.KEYCODE_ESCAPE) {
            Log.d(\"T\", \"onKeyUp: KEYCODE_BACK\")
            onBackPressed()
        }
        return super.onKeyUp(keyCode, event)
    }

您如何在 Jetpack Compose 中正确处理这个问题?

    标签: android keyboard accessibility android-jetpack-compose


    【解决方案1】:

    解决方案

    你可以使用keyboards modifiersModifier.onKeyEvent

    例子

    例如,在您的应用程序的根目录:

    
    Box(
        modifier = Modifier
            .onKeyEvent {
                if(it.key == Key.Escape) {
                    // Assuming you are using jetpack compose navigation
                    navController.popBackStack()
                }
                true
            }
    ) {
        // Your content
    }
    

    【讨论】:

      猜你喜欢
      • 2019-02-03
      • 2012-05-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-04-21
      • 1970-01-01
      相关资源
      最近更新 更多