【问题标题】:Capture.captureAudio() within a modal dialog on Android 8+ does not return until dispose of dialogAndroid 8+ 上的模态对话框中的 Capture.captureAudio() 直到 dispose 对话框才返回
【发布时间】:2021-05-13 10:43:09
【问题描述】:

我实例化了一个模态对话框并有一个执行 Capture.captureAudio() 的按钮 在三星 TAB S5e 和 Galaxy Tab A8 设备上运行的 Android 8+ 上, 点击按钮会按预期打开录制对话框,但是当点击“保存”时,在我处理当前对话框之前,我们不会得到 Capture.captureAudio() 返回的字符串。 然后将 Capture.captureAudio() 结果返回给我。

在 IOS 和 PC 上正常工作。

我的对话框在 EDT 上执行,Capture.captureAudio() 从 lambda 表达式和单独的 EDT 上执行

想法?

问候

【问题讨论】:

    标签: codenameone


    【解决方案1】:

    尝试使用showModless() 方法将对话框显示为无模式。或者尝试使用InteractionDialog 讨论的here

    对于任何复杂的 UI,尤其是可能使用 invokeAndBlock 语义的 UI,我们通常建议避免使用 Dialog。正如您在本例中看到的那样,嵌套它们可能会导致意想不到的副作用。这只发生在 iOS 上,因为 iOS 实现在内部使用 invokeAndBlock()

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-11-01
      • 2013-08-26
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多