android中ViewModel类中如何创建Webview的MutableStateFlow

问题描述 投票:0回答:1

如何管理 ViewModel 类中的 webview 状态流。 比如:

private val _webView = MutableStateFlow(WebView())
val webView: StateFlow<WebView> get() = _webView


fun getWebViewHtml(){
  webView.value.evaluateJavascript("(function() {return}") { html ->
    print(html)
  }
}

我需要从 Jetpack 返回 RememberWebViewStateWithHTMLData

webview android-jetpack-compose kotlin-stateflow
1个回答
0
投票
val initialState: WebView? = null
private val _webView = MutableStateFlow(initialState)
val webView: StateFlow<WebView?> get() = _webView

fun getTExtFromWebView(webView: StateFlow<WebView?>) {
    webView.value?.evaluateJavascript("(function(){return document.getElementsByTagName('html')[0].outerHTML;})();") { html ->
        println(html)
    }
}

@Compose
fun WebViewField(){
WebView(
        ......
        coroutine.launch {
            composeViewModel.setWebViewState(
                    webView
            )
        }
)

}
© www.soinside.com 2019 - 2024. All rights reserved.