如何在 WebView 中以编程方式退出全屏?

问题描述

我的小部件树看起来像这样,

hashmap = {
    "1234": "authtoken1","2222": "authtoken2"
}

pm.variables.get("count") === undefined ? pm.variables.set("count",0) : null

let keyval = Object.entries(hashmap)
let count = pm.variables.get("count")
if (count < keyval.length) {
    pm.variables.set("id",keyval[pm.variables.get("count")][0])
    pm.variables.set("token",keyval[pm.variables.get("count")][1])
    pm.variables.set("count",++count)
    keyval.length===count? null:postman.setNextRequest(pm.info.requestName)
}

 

上面的代码不是真正的代码,但为了清楚起见,我删除了大部分部分。这就是基本上发生的事情。 webview里面的html播放器可以播放视频。我有一个跟踪时间的套接字连接,超时后 Widget build(context) { return Consumer<SocketModel>( builder: (ctx,model,snapshot) { if(model.forceLeave == true) { return Text("Your time is up") } return WebViewWithAHtmlPlayer() } ) } 变为真,这会导致运行 forceLeave 条件。

当我不让 html 视频播放器全屏显示时,这有效。但是,如果 if 在我在 html 播放器上全屏显示时变为真,则屏幕将变为空白并带有白色背景。由于我禁用了后退按钮,我的应用程序就像冻结一样(但实际上不是。)

如何退出全屏视图?

我试过了, forceLeaveSystemChrome.restoreSystemUIOverlays() 包装器小部件的处置中。但它仍然没有退出全屏视图。

如何在上述受控结构中正确退出当前全屏视图?例如,有没有办法做类似的事情,

WebView

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)