flutter中實現(xiàn)網(wǎng)頁(H5)展示及交互(三方庫:webView_flutter)

一序调、展示W(wǎng)ebView(URL)

1涣仿、首先在pubspec.yaml文件中添加webview_flutter:這個三方庫赦颇。

2咏闪、在.dart文件里導(dǎo)入所需文件名

import 'package:webview_flutter/webview_flutter.dart';

3曙搬、在initState方法里初始化controller(WebviewPageWithURL是我創(chuàng)建的用于接收URL來展示的網(wǎng)頁類)
webView通過WebViewController來控制網(wǎng)頁功能。

代碼示例

4、創(chuàng)建WebViewWidget

代碼示例

5纵装、在需要展示webview的地方征讲,調(diào)用getContentWebView()就可以了。

二橡娄、展示W(wǎng)ebView(HTML)

上述代碼都不變诗箍,只需要將..loadRequest()方法替換為..loadHtmlString(),并且把里面的代碼改成html字符串就行了挽唉。

代碼示例

三扳还、flutter中與WebView交互

1、flutter讀取H5內(nèi)容:
(1)H5通過URL向flutter傳遞數(shù)據(jù)(通過setNavigationDelegateNavigationDelegate

代碼示例

(2)通過定義特殊字段傳遞數(shù)據(jù)(通過添加JavaScriptChannel

flutter中代碼處理

H5中的定義:
keyButton.addEventListener('click', function () {
? ? ?//通過注冊的key channel向flutter發(fā)送消息
? ? ?key.postMessage("value");
}, false)

2橱夭、flutter向H5傳遞數(shù)據(jù)
(1)拼接Url

代碼示例

(2)使用runJavaScript方法傳遞
(比如點擊flutter中一個按鈕,調(diào)用sendMessageToH5()方法桑逝,在這方法里執(zhí)行JS代碼)

flutter中處理

H5中設(shè)置
<script type="text/javascript">
? ? function getParams(params) {
? ? ? ?document.getElementById('result').innerHTML = 'flutter傳遞的數(shù)據(jù):' + params;
? ? }
? ? function getParamsCallBack(value) {
? ? ? return '處理結(jié)果'+value;
? ? }
</script>

?? 通常我們會有點擊空白處收起鍵盤的需求棘劣,實現(xiàn)代碼是在main函數(shù)里添加以下代碼

?// 全局 點擊空白區(qū)域 收起鍵盤

return GestureDetector(
? ? ? ? onTap: () {
? ? ? ? ? FocusScopeNode currentFocus = FocusScope.of(context);
? ? ? ? ? if (!currentFocus.hasPrimaryFocus && currentFocus.focusedChild != null) {
? ? ? ? ? ? FocusManager.instance.primaryFocus?.unfocus();
? ? ? ? ? }
? ? ? ? },
? ? ? ? onPanDown: (details) {
? ? ? ? ? FocusScopeNode currentFocus = FocusScope.of(context);
? ? ? ? ? if (!currentFocus.hasPrimaryFocus && currentFocus.focusedChild != null) {
? ? ? ? ? ? FocusManager.instance.primaryFocus?.unfocus();
? ? ? ? ? }
? ? ? ? },
? ? ? ? child: GetMaterialApp(
? ? ? ? ? ?//讨永。煌抒。嘱巾。笼恰。楞艾。便瑟。
? ? );
? }

但在實際操作中历造,有時因為一些設(shè)置導(dǎo)致WebView無法滾動直秆,原因是這個onPanDown手勢處理把WebView的滾動手勢也處理了预鬓,導(dǎo)致不響應(yīng)巧骚。為了解決問題,需要去掉onPanDown這個處理器格二,并且設(shè)置behavior屬性劈彪。這樣依然可以保持點擊空白部分收起鍵盤的功能。

?//全局 點擊空白位置隱藏鍵盤
GestureDetector(
? ? ? ? behavior: HitTestBehavior.translucent,//更精準(zhǔn)地識別手勢
? ? ? ? onTap: () {
? ? ? ? ? FocusScopeNode currentFocus = FocusScope.of(context);
? ? ? ? ? if (!currentFocus.hasPrimaryFocus && currentFocus.focusedChild != null) {
? ? ? ? ? ? FocusManager.instance.primaryFocus?.unfocus();
? ? ? ? ? }
? ? ? ? },
? ? ? ? child: GetMaterialApp(
? ? ? ? ? ? ? ? ?//......
? ? ? ? ? )
);


顶猜。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末沧奴,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子长窄,更是在濱河造成了極大的恐慌滔吠,老刑警劉巖,帶你破解...
    沈念sama閱讀 212,542評論 6 493
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件挠日,死亡現(xiàn)場離奇詭異疮绷,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)肆资,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,596評論 3 385
  • 文/潘曉璐 我一進(jìn)店門矗愧,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事唉韭∫固椋” “怎么了?”我有些...
    開封第一講書人閱讀 158,021評論 0 348
  • 文/不壞的土叔 我叫張陵属愤,是天一觀的道長女器。 經(jīng)常有香客問我,道長住诸,這世上最難降的妖魔是什么驾胆? 我笑而不...
    開封第一講書人閱讀 56,682評論 1 284
  • 正文 為了忘掉前任,我火速辦了婚禮贱呐,結(jié)果婚禮上丧诺,老公的妹妹穿的比我還像新娘。我一直安慰自己奄薇,他們只是感情好驳阎,可當(dāng)我...
    茶點故事閱讀 65,792評論 6 386
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著馁蒂,像睡著了一般呵晚。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上沫屡,一...
    開封第一講書人閱讀 49,985評論 1 291
  • 那天饵隙,我揣著相機(jī)與錄音,去河邊找鬼沮脖。 笑死金矛,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的勺届。 我是一名探鬼主播绷柒,決...
    沈念sama閱讀 39,107評論 3 410
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼涮因!你這毒婦竟也來了废睦?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,845評論 0 268
  • 序言:老撾萬榮一對情侶失蹤养泡,失蹤者是張志新(化名)和其女友劉穎嗜湃,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體澜掩,經(jīng)...
    沈念sama閱讀 44,299評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡购披,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,612評論 2 327
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了肩榕。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片刚陡。...
    茶點故事閱讀 38,747評論 1 341
  • 序言:一個原本活蹦亂跳的男人離奇死亡惩妇,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出筐乳,到底是詐尸還是另有隱情歌殃,我是刑警寧澤,帶...
    沈念sama閱讀 34,441評論 4 333
  • 正文 年R本政府宣布蝙云,位于F島的核電站氓皱,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏勃刨。R本人自食惡果不足惜波材,卻給世界環(huán)境...
    茶點故事閱讀 40,072評論 3 317
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望身隐。 院中可真熱鬧廷区,春花似錦、人聲如沸贾铝。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,828評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽忌傻。三九已至,卻和暖如春搞监,著一層夾襖步出監(jiān)牢的瞬間水孩,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,069評論 1 267
  • 我被黑心中介騙來泰國打工琐驴, 沒想到剛下飛機(jī)就差點兒被人妖公主榨干…… 1. 我叫王不留俘种,地道東北人。 一個月前我還...
    沈念sama閱讀 46,545評論 2 362
  • 正文 我出身青樓绝淡,卻偏偏與公主長得像宙刘,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子牢酵,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 43,658評論 2 350

推薦閱讀更多精彩內(nèi)容