@suragch,你的代码在发布时不起作用,它说localUrl
在null
上被调用。_loadHtmlFromAssets
需要在分配控制器后调用:
onWebViewCreated: (WebViewController webViewController) {
_controller = webViewController;
_loadHtmlFromAssets();
}
那么它就可以正常工作了:)
你可以传递一个数据URI
Uri.dataFromString('<html><body>hello world</body></html>', mimeType: 'text/html').toString()
或者,您可以在Flutter中启动一个Web服务器,并传递一个指向服务器提供文件的IP/端口的URL。
另请参见中的讨论https://github.com/fluttercommunity/flutter_webview_plugin/issues/23
看见https://flutter.io/docs/development/ui/assets-and-images#loading-有关如何从资源加载字符串的文本资源。
有关如何读取其他文件,请参阅https://flutter.io/docs/cookbook/persistence/reading-writing-files。
我正在使用来自颤振团队的webview_颤振插件。
>
dependencies:
webview_flutter: ^0.3.20+2
将html文件放入assets
文件夹(参见此)。我叫它“帮助”。html。
在代码中获取html字符串并将其添加到webview中。
import 'dart:convert';
import 'package:flutter/material.dart';
import 'package:flutter/services.dart';
import 'package:webview_flutter/webview_flutter.dart';
class HelpScreen extends StatefulWidget {
@override
HelpScreenState createState() {
return HelpScreenState();
}
}
class HelpScreenState extends State<HelpScreen> {
WebViewController _controller;
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(title: Text('Help')),
body: WebView(
initialUrl: 'about:blank',
onWebViewCreated: (WebViewController webViewController) {
_controller = webViewController;
_loadHtmlFromAssets();
},
),
);
}
_loadHtmlFromAssets() async {
String fileText = await rootBundle.loadString('assets/help.html');
_controller.loadUrl( Uri.dataFromString(
fileText,
mimeType: 'text/html',
encoding: Encoding.getByName('utf-8')
).toString());
}
}
io.flutter.embedded_views_preview
作为true
在nfo.plist文件中。检查文档,了解此需求的任何更新。我试图在HTML的pre标签中包装文本,但它不起作用。我使用下面的CSS作为我的标签。 我从如何在pre标记中换行文本? 我已添加
对于上面的html内容,我如何使用Jsoup解析并获取文本 当我使用 我得到了这样的东西
我正在尝试使用BeautifulSoup转换HTML文本块。以下是一个示例: 我试着做了这样的事情: ...但是这样我的span元素总是在新行上。这当然是一个简单的例子。有没有办法在超文本标记语言页面中获取文本,就像它在浏览器中呈现的方式一样(不需要css规则,只是div、spans、li等元素呈现的常规方式)在Python中?
我正在尝试使用放心来检查服务器返回的HTML文档的一些属性。演示该问题的SSCCE如下所示: 现在,此尝试以,这是由所有可能的错误大约 30 秒左右后超时! 如果我用< code>xmlPathConfig()删除这一行。用()。功能(...)当特性“http://Apache . org/XML/features/disallow-DOCTYPE-decl”设置为true时,由于< code>D
我是新来的。我想解析html,但问题是我们必须在中指定的URL,我将在运行时从其他页面响应此URL。有没有办法将收到的网址传递到中?我读过这样的东西: 但是我不知道如何使用它。我很想知道是否有其他方法比jsoup更好。
这个头衔实际上是我实现目标的失败尝试。具体来说,我想1。从main转到页面。html(例如,到page1.html) 2。在第1页的表单中收集数据 3。提交时,转到第2页。html(它使用PHP将数据保存到数据库并宣布结果) 4。单击“确定”并返回主菜单页<似乎很合理,对吧? 上面的第4步是我的问题。 我尝试过的事情: 1.在page2中的Ok单击调用history.back。 这将转到page1