gpt4 book ai didi

swift - 可以快速将自定义 HTML View 加载到 webView 中吗?

转载 作者:可可西里 更新时间:2023-11-01 00:17:13 25 4
gpt4 key购买 nike

假设我正在将 url 加载到 webView 中,它看起来像:

enter image description here

但是我想从这个 url 中删除一些不需要的东西,比如:

enter image description here

我在互联网上搜索了很多,但没有找到有用的东西。但我认为我必须在加载到 webView 之前从 HTML View 中删除一些标签。但我不知道该怎么做。

是否可能,如果可以,我该如何执行此操作?

请帮助我。

最佳答案

我已经找到了我的问题的解决方案 THIS教程对我帮助很大。

如本教程所示,这里是将自定义 HTML View 加载到 webView 的分步示例。

来自字符串的 Web View :

有多种方法可以使用 WebView 。在属性字符串出现之前,这是获取格式化文本的唯一方法。开发人员将在 HTML 中编写一串文本,并使用方法 loadHTMLString 将其发送到 UIWebview。将 viewDidLoad 方法更改为:

overridefuncviewDidLoad() {
super.viewDidLoad()
letmyHTMLString:String! = "<h1>Hello Pizza!</h1>"
myWebView.loadHTMLString(myHTMLString, baseURL: nil)
}

第 3 行创建了一个可选字符串,因为 loadHTMString 方法需要一个字符串。第 4 行加载字符串,并有第二个参数 baseURL,它设置 HTML 的基本 URL 路径。通常我们将其设置为 nil 但如果您有要加载的文件,例如图像或样式表,这将为文件提供默认路径。构建并运行:

enter image description here

那太无聊了,所以让我们添加更多的 HTML 代码,用这个替换字符串,所有这些都没有分页符。

letmyHTMLString:String! = "<h1 style=\"font-family: Helvetica\">Hello Pizza</h1><p>Tap the buttons above to see <strong>some cool stuff</strong> with <code>UIWebView</code><p><img src=\"https://apppie.files.wordpress.com/2014/09/photo-sep-14-7-40-59-pm_small1.jpg\">"

您会注意到我们在几个地方使用了引号转义序列\"。我们需要在几个地方添加引号,反斜杠后跟引号允许我们在字符串中这样做。构建并运行。这是一个好一点:

enter image description here

来自文件的 Web View 和 CSS:

尝试从字符串格式化一些东西并不容易。如果我们将 HTML 放在一个单独的文件中,我们的工作会更容易。更好的是外部样式表。点击键盘上的 Command-N 或从下拉菜单中点击文件 > 新建 > 文件…创建一个新文件。通过转到 iOS 下的其他和清空来创建一个空白文件。

enter image description here

单击下一步,然后将文件命名为 myHTML.html。保存文件。在空白文件中添加以下代码:

<!--<DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<!-- Based on lesson from http://www.w3.org/Style/Examples/011/firstcss -->Hello Pizza Home

<!-- Site navigation menu -->
<div class="navbar">
<a href="index.html">Home</a>
<a href="musings.html">Toppings</a>
<a href="town.html">Crust</a>
<a href="links.html">Ovens</a>
</div>
<div class="content">
<!-- Main content -->
<h1>Hello Pizza!</h1>
This is a site for the love of all things pizza!

But we are not just pizza, we are with anything on a flatbread. So look around and you will find naan, flatbreads, pitas and tortilla related stuff too!!!

If that is not enough, check our sister site <a href="pie">Hello Pie</a>

<img src="https://apppie.files.wordpress.com/2014/09/photo-sep-14-7-40-59-pm_small1.jpg" alt="" />
<!-- Sign and date the page, it's only polite! -->
</div>
<address>Made 27 October 2012
by makeapppie.com.</address>

回到 ViewController.swift 文件中,将 helloPizza 方法更改为:

@IBAction func helloPizza(sender: UIBarButtonItem) {
let myURL = NSBundle.mainBundle().URLForResource("myHtml", withExtension: "html")
let requestObj = NSURLRequest(URL: myURL!)
myWebView.loadRequest(requestObj)
}

第 2 行从所谓的主包中为 myHTML.html 创建一个 url。主包是我们将特定项目的所有代码文件放在 XCode 中的目录。主包根据设备更改位置。我们没有给出文字路径,而是使用这个相对指示符。第 3 行创建一个 NSURLRequest,这是一个我们在第 4 行中输入到 loadRequest 方法的对象。loadRequest 将 HTML 代码加载到 UIWebView 中。构建并运行它。点击 Pizza 按钮,你会得到这个:

enter image description here

这个 View 不是那么漂亮,但是我们可以添加一些 CSS 来稍微清理一下。像以前一样创建另一个空白文件,命名为 myCSS.css 并将以下内容添加到新文件中:

body {
color: #eeeeee;
background: #a0a088;
font-family:Helvetica}
h1 {
color: #dd1111;
font-family:Chalkduster;
font-size: 18pt}
a{
font-family:Helvetica;
font-weight: bold;
color: #ffffaa;
text-decoration:none;
padding-left: 5px;
}
img{
padding-left:0;
max-width: 90%;
max-height: 90%;
box-shadow: 3px 3px 3px 0px #202020
}
.navbar {
background-color: #000000;
color: white;
position: absolute;
top: 0em;
left: 0em;
width: 100% }
.content{
padding-left: 1em;
padding-top: 1em;
}

myHTML.Html 中的 HTML 代码假定 baseURL 是包。构建并运行,我们得到一个更好格式化的 web View :

enter image description here

现在有了这个例子,我可以从浏览器复制页面源代码,然后我可以将该 HTML 代码粘贴到我的 HTML 文件中,然后我可以进行更改,比如我可以从该 HTML 代码中删除不需要的标签,稍后我可以加载这个 HTML进入 webView

关于swift - 可以快速将自定义 HTML View 加载到 webView 中吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27561588/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com