gpt4 book ai didi

android - 带有 DayNight 主题的 BiometricPrompt

转载 作者:行者123 更新时间:2023-12-03 20:52:08 30 4
gpt4 key购买 nike

DayNight Theme 有四种情况:

  • 设备 - 深色 模式,应用程序 - 深色 模式
  • 设备 - 灯光 模式,应用程序 - 灯光 模式
  • 设备 - 深色 模式,应用程序 - 灯光 模式
  • 设备 - 灯光 模式,应用程序 - 深色 模式

  • 第一种和第二种情况是正常的。不幸的是,在第三种和第四种情况下并不像预期的那样。
    BiometricPrompt 对话框获取设备的 ui 模式。我想为 BiometricPrompt Dialog 应用应用程序 UI 模式。您可以在下面看到问题:

    设备 - 深色 模式,应用程序 - 灯光 模式
    Device - **DARK** mode, application - **LIGHT** mode

    设备 - 灯光 模式,应用程序 - 深色 模式
    Device - **LIGHT** mode, application - **DARK** mode

    最佳答案

    有趣的问题!
    从您的问题中可以清楚地看出,设备和应用程序角色在所有 4 个场景中都会切换(但仅在颜色不同时才明显)
    一些要检查的资源以及我回答的基础:
    https://developer.android.com/guide/topics/ui/look-and-feel/darktheme
    https://cs.android.com/androidx/platform/frameworks/support/+/androidx-master-dev:biometric/biometric/src/main/java/androidx/biometric/
    一些背景:

  • 身份验证布局采用软编码颜色(主题属性)构建,允许夜间主题运行(如您的图片所示)
  • 布局未设置为从夜间主题( Activity 的工作)继承
  • 显示身份验证对话框的方法使用 fragment (不是 Activity ),这可能会导致它在 uiMode 下无法正常工作)。必须在 list 中设置一个 Activity 以支持 uiMode。不确定这将如何与 fragment 一起使用
  • uiMode 配置更改自动重建 Activity

  • 我的答案:
    由于用户身份验证的高优先级,身份验证对话框的优先级高于作为“设备”的 Activity ,而对话框后面的 Activity 被委派了“应用程序”的角色。目前尚不清楚为什么或如何发生这种情况。我会尝试在您实现 DayNight 主题的过程中切换设备和应用程序的角色。

    关于android - 带有 DayNight 主题的 BiometricPrompt,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62346043/

    30 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com