如何将项目添加到 UIWebView 的 UIScrollView

Posted

技术标签:

【中文标题】如何将项目添加到 UIWebView 的 UIScrollView【英文标题】:how to add items into UIScrollView of UIWebView 【发布时间】:2013-08-13 15:21:41 【问题描述】:

我正在做一个需要使用UIWebView 的项目,显然是因为我必须使用html。我从情节提要中添加了UIWebView,他的属性是articleWebView

但是我的问题是我需要在 UIWebView 中输入一些 html 中不存在的元素(html 是从 json 获取的,它不可编辑),如 2 UILabelUIImageView . 这个方法我用过,效果很好

    UIImageView *myImage = [[UIImageView alloc]initWithFrame:CGRectMake(0, 80, 298, 200)];
    [myImage setImage:[UIImage imageNamed:@"myPng.png"]];
//[some code here...]   
    UILabel *articleTitle = [[UILabel alloc]initWithFrame:CGRectMake(0, 10, 298, 40)];
    articleTitle.text = @"someText";
//[some code here...]    
    self.articleWebView.delegate = self;
//[some code here...]
    NSString *myHTML = @"<html>myWebContent</html>;
//[some code here...]    
    [self.articleWebView loadHTMLString:myHTML baseURL:nil];
    [self.articleWebView.scrollView addSubview:articleTitle];
    [self.articleWebView.scrollView addSubview:myImage];

在这段代码中,子视图正确显示在它们的 x/y 轴上,但没有设置 html 文本,因此它显示在 x/y = 0 处的 UIWebView 顶部,可以说,在UIImageView

您知道如何在给定距离内将我的myHTML 移动到其他项目下方吗??

【问题讨论】:

你为什么要让代码变得复杂? UIWebView 用于 HTML 内容。 如果您可以在 HTML 字符串的内容中添加中断标记 &lt;br&gt; @老虎谢谢你的帮助。 @Hemang 不,我不能在我的 HTML 中添加 或其他内容 编辑 HTML 或使用 javascript 注入其中。 【参考方案1】:

实际上,当您将 HTML 作为字符串接收时,您可以对其进行编辑,只需将新的 HTML 字符串附加到它,就像您已经在这一行中所做的那样 NSString *myHTML = @"&lt;html&gt;myWebContent&lt;/html&gt;;

您可以轻松地使用字符串来实现您想要的。会是这样的:

NSString *header = @"\
    <h1>My title here</h1>\
    <img .../>;\
     ";

NSString *myHTML = [NSString stringWithFormat:@"<html>%@%@</html>, header, myWebContent];

【讨论】:

以上是关于如何将项目添加到 UIWebView 的 UIScrollView的主要内容,如果未能解决你的问题,请参考以下文章

如何将 JQuery 插件添加到 UIWebview?

将 UIWebView 添加到第二个(不是第一个)故事板视图控制器

如何将 UIWebView 垂直滚动事件传输到父视图?

将 window.navigator.standalone 添加到 UIWebView DOM

如何将值从javascript传递到iOS UIWebView

iPhone - 向键盘现有附件视图添加一个按钮(来自 UIWebView 的键盘)