为啥 Flutter WebView 不加载页面?
Posted
技术标签:
【中文标题】为啥 Flutter WebView 不加载页面?【英文标题】:Why is Flutter WebView not loading page?为什么 Flutter WebView 不加载页面? 【发布时间】:2021-12-03 10:39:37 【问题描述】:我正在制作一个简单的屏幕,其中包含封装在 Scaffold 内的 WebView。 WebView 上方有一个按钮。 WebView 未加载页面。但是,当 WebView 未封装在 Scaffold 内时,页面会加载。我需要将 Scaffold 作为容器来添加其他小部件。如何让 WebView 在 Scaffold 中加载其页面。
Scaffold 中包含 WebView 的代码。 WebView 不加载
return MaterialApp(
home: Scaffold(
body: Column(
mainAxisAlignment: MainAxisAlignment.center,
children: [
TextButton(
onPressed: ()
,
child: Text('Print page'),
),
WebView(
initialUrl: 'https://flutter.dev',
)
],),),
);
仅包含 WebView 的代码。 WebView 不加载
return MaterialApp(
home: WebView(
initialUrl: 'https://flutter.dev',
),
);
【问题讨论】:
如果你使用的是 Webview 的 Flutter 社区插件。然后你需要使用 WebViewScaffold。请查看此媒体链接medium.com/@zeyadelosherey/… 【参考方案1】:******Give Internet Permission in android Manifest.xml file and the permission is below
https://***.com/questions/55603979/why-cant-a-flutter-application-connect-to-the-internet-when-installing-app-rel
<manifest xmlns:android="...">
<uses-permission android:name="android.permission.INTERNET"/>
</manifast>
【讨论】:
medium.com/flutter/…【参考方案2】:此代码对我有用。试试这个
return Scaffold(
appBar: AppBar(
title: Text('test'),
),
body: Column(
children: [
RaisedButton(
onPressed: () ,
child: Text('Test'),
),
Expanded(
child: WebView(
initialUrl: 'https://flutter.dev',
javascriptMode: JavascriptMode.unrestricted,
),
),
],
),
);
【讨论】:
以上是关于为啥 Flutter WebView 不加载页面?的主要内容,如果未能解决你的问题,请参考以下文章
使用flutter_webview_plugin加载页面后如何在WebView中执行JavaScript代码
flutter_webview_plugin 加载全屏页面的简单使用