【问题标题】:Programmatically Add a View to each Page of a UIWebView (iPhone/iPad)以编程方式将视图添加到 UIWebView (iPhone/iPad) 的每个页面
【发布时间】:2011-03-08 16:38:59
【问题描述】:

我正在尝试向 iPhone/iPad 上分页 UIWebView 的每个页面添加一个视图(特别是 UIImageView)。我的最终目标是打开 PDF 并在(可能是多页的)PDF 的每一页底部都有一个签名框。我按照 this 教程使用 UIImageView 作为签名框,并按照 this 教程在 UIWebView 中成功打开 PDF。

我的计划是以编程方式获取 UIWebView 的每个“页面”,并在每个页面的底部添加我的签名框(将视图堆叠在另一个之上)。是否可以获取 UIWebView 的每一页? cocoa 是否知道每一页在哪里,或者它是否进行了一些花哨的数学计算来知道在哪里放置换行符?

理想情况下,应该是这样的:

for(UIView *page in webView.pages){
      [self addSignatureBox:page];
 }

【问题讨论】:

  • UIWebView 让显示 PDF 变得轻而易举,但我建议查看 CGPDFDocumentRef。这使您可以抓取一个页面并将其显示在视图中。
  • Cocoa是Mac开发框架;所有 UI* 类都特定于 Cocoa Touch。
  • 是的,但它也可以在 iPhone 上使用。 iOS 开发人员不仅限于 UI 类。我知道这一点是因为我使用了 CGPDFDocumentRef。

标签: iphone cocoa-touch ipad ios uikit


【解决方案1】:

您可以在 webview 中获取任何页面的 HTML 代码。查看以下链接。

Reading HTML content from a UIWebView

将网页的 HTML 代码存储在 NSString 中并修改它们以添加您的签名。

希望对你有帮助

【讨论】:

  • 有没有办法从 HTML 代码插入可可对象(即 UIImageView)?我在想我会把 UIImageView 放在 UIWebView 的顶部(堆叠视图)。我是否应该考虑将 UIImgeView 的代码嵌入到实际的 HTML 中?
  • 最好将imageView添加到webView之上。在 HTML 中嵌入图像会太忙。通过 imageView.frame = CGRectMake(x,y,width,height) 方法调整 imageView 的大小,并使用 [self.view addSubview:imageView] 添加。要获取页面,请按照链接中的说明获取 HTML 代码,并在需要时将它们加载回 webview。
  • 我能否仅从 HTML 中判断分页符在哪里?
  • 您必须在 NSString 中搜索分页符标签。有用于在字符串中搜索子字符串的内置方法。
猜你喜欢
  • 2010-09-16
  • 1970-01-01
  • 2017-10-09
  • 2017-06-28
  • 1970-01-01
  • 2016-04-22
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多