我是Flutter的新手,尝试在Flutter中使用web view,但是web view的大小超过了屏幕大小。
我想把网页尺寸调整为手机屏幕大小。
我该怎么做呢?
以下是我的代码和当前屏幕截图:
以下是我想要看到的:
这是我的代码:
import 'package:flutter/material.dart';
import 'package:flutter_webview_plugin/flutter_webview_plugin.dart';
class CoursesInformation extends StatefulWidget {
@override
_WebViewExampleState createState() => _WebViewExampleState();
}
class _WebViewExampleState extends State<CoursesInformation> {
TextEditingController controller = TextEditingController();
FlutterWebviewPlugin flutterWebviewPlugin = FlutterWebviewPlugin();
var urlString = "https://shoham.biu.ac.il/BiuCoursesViewer/MainPage.aspx";
launchUrl() {
setState(() {
urlString = controller.text;
flutterWebviewPlugin.reloadUrl(urlString);
flutterWebviewPlugin.launch(urlString,
rect: new Rect.fromLTWH(
0.0,
0.0,
MediaQuery.of(context).size.width,
300.0));
});
}
@override
void initState() {
super.initState();
flutterWebviewPlugin.onStateChanged.listen((WebViewStateChanged wvs) {
print(wvs.type);
});
}
@override
Widget build(BuildContext context) {
return Directionality(
textDirection: TextDirection.rtl,
child: WebviewScaffold(
appBar: AppBar(
title: Text('מידע על קורסים'),
centerTitle: true
),
url: urlString,
withZoom: true,
scrollBar: true,
withJavascript: true,
useWideViewPort: true,
withLocalStorage: true,
));
}
}
InAppWebView
需要Android 20+。如果您想使用InAppWebView
小部件,则这是最低的Android版本。不幸的是,这不取决于我,而是取决于官方AndroidView
API在Flutter小部件树中嵌入本地视图。如果您需要支持较低的Android版本,则应使用InAppBrowser
或ChromeSafariBrowser
。 - Lorenzo Pichilliflutter_inappwebview
目前存在许多问题,且已经不再维护。请参考 https://github.com/pichillilorenzo/flutter_inappwebview/issues。 - Pawan