问题标签 [uiwebview]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1749 浏览

iphone - UIWebView 包括。内容编码/解码

我的目标:在应用程序中断时继续网络会话(例如,读取的传入短信)。

方法 A: 我尝试​​将 UIWebView 的内容存储在 NSUserDefaults 中,如下所示:

然后像这样恢复它:

但这不包括内容。

方法 B: 我还尝试通过以下方式获取 UIWebView 的内容:

然后存储它,并再次检索它,然后尝试在 UIWebView 中设置它:

- (void)loadData:(NSData *)data MIMEType:(NSString *)MIMEType textEncodingName:(NSString *)encodingName baseURL:(NSURL *)baseURL

但 innerHTML javascript 并未返回全部内容。

有什么想法、建议等吗?

0 投票
1 回答
4085 浏览

iphone - UIWebView 似乎没有加载页面

我有一个基于导航控制器的应用程序,它下载 RSS 提要并在 TableView 中布置项目标题。那部分有效。当我单击文章标题时,我想将 FeedArticleController 的一个实例推送到导航堆栈上。FeedArticleController loadView 方法设置视图(因为我想学习如何以编程方式而不是使用 IB 来执行此操作)。这是加载视图:

那有意义吗?现在,为了让 webView 真正加载页面,我有这个 viewDiDLoad 方法:

然后我有委托方法,webViewDidStartLoad 和 webViewDidFinishLoad。他们只是打印到 NSLog。

我在构建和添加视图的方式上是否遗漏了什么?委托方法似乎在延迟后打印到日志,并且在实例化 webView 时在线上有流量。所以,我认为它正在加载页面,但没有显示?

多谢你们。

0 投票
2 回答
4641 浏览

iphone - 将 viewWillAppear 推迟到 webViewDidFinishLoad

我有一个UIWebViews在多个视图控制器中使用的应用程序。UIWebViews用于渲染本地生成的 html,不需要慢速网络访问。

viewWillAppear为了节省内存,我只根据视图控制器回调的提示按需加载这些。(并卸载屏幕外实例以响应didReceiveMemoryWarning消息。)

问题是用户可以看到正在呈现的 html,有时伴随着样式的闪烁和其他各种令人不快的伪影。我宁愿渲染在屏幕外完成,并在准备好时显示完全渲染的视图。

viewWillAppear在 UIWebView 完全呈现之前能够不返回将是非常整洁的。但是怎么做?

我通过向它发送消息来告诉它UIWebView要呈现的内容。loadHTMLString:baseURL:这是异步的,稍后(很快)webview 的委托会被回调webViewDidFinishLoad

我尝试在内部运行一个 runloop viewWillAppear,运行NSDefaultRunLoopModeUITrackingRunLoopMode. 这在模拟器中有效(它向日志抱怨

[CATransaction synchronize] 在事务中调用

但确实有效)但在设备上它会死锁,webViewDidFinishLoad永远不会被调用。

(另外,似乎UIWebView加载属性不起作用。至少,在我调用之后loadHTMLString:baseURL:和在得到回调之前它不是真的。)

0 投票
3 回答
1398 浏览

iphone - UIWebView 没有完成加载

我已经将一个视图推送到包含 UIWebView 的导航控制器上,这将加载一个 URL。

当它启动时,我启动 networkActivityIndi​​catorVisible,当它完成时,我将其隐藏。

如果用户决定他不想完成加载网页并返回导航控制器,则网络指示器会继续。我该如何摆脱它,因为似乎没有为此的委托方法,并且没有任何 viewdidUnload 被触发....

0 投票
2 回答
568 浏览

iphone - 使用 iPhone SDK 是否可以以不同页面的形式显示大型内容?

使用 iPhone SDK 是否可以以不同页面的形式显示大型内容?

我希望用户能够在不进行大量滚动的情况下查看内容。

我尝试使用 UIWebView,但我找不到任何自动滚动属性。

0 投票
1 回答
1826 浏览

iphone - UIWebview 的问题并链接到 App Store

在我的 iPhone 应用程序中,我有一个显示 html 页面的 UIWebview。在该页面内,有一些链接可以将用户引导至 iTunes 应用程序和他们点击的应用程序。但是,当用户点击链接时,会出现“重定向过多”的错误。用数据包嗅探器查看它,我发现它只是不断重定向到相同的http://phobos.apple.com/ ... URL。我什至尝试将链接方案更改为“itms://”,但这会导致“无法显示 URL”错误。我可以通过捕获 URLRequest 并将 openURL: 发送到 UIApplication 来解决这个问题,但是该应用程序已经部署并且我不想修补它。如果可能的话,我宁愿在 html/js/server 端这样做。有人有想法么?

0 投票
2 回答
19518 浏览

iphone - MPMoviePlayerController 与启动 UIWebView 以流式传输电影的优缺点

我有一个客户,他拥有 Flash 格式的网络视频内容。我的任务是帮助他们在 iPhone 应用程序中显示视频。

我意识到第一步是将这些视频转换为适用于 iPhone 的 Quicktime 格式。

然后我将不得不帮助客户弄清楚如何或在哪里托管这些文件。如果这很棘手,我认为它们可以托管在 YouTube 上。

不过,我主要关心的是采用哪种方法来流式传输视频。MPMoviePlayerController 与使用流的 URL 启动 UIWebView 的优缺点是什么?有什么区别吗?他们中的一个人或多或少是宽容的?其中之一是更好的用户体验吗?我可能会遇到任何陷阱?

我假设在 iPhone 上播放视频非常容易。两者都尝试并有一个可用作为后备是否合理,还是会浪费时间?我正在尝试安排一下,所以我很想听听任何做过这件事的人的真实经历。

0 投票
3 回答
1815 浏览

iphone - 如何从主视图加载子视图?

我对 Obj-C 和学习 iphone 开发非常陌生。我的问题是如何从应用程序委托添加子视图。假设我从“applicationDidFinishLaunching”方法中添加了名为“MainView”的子视图。

}

“MainView.xib”文件有一个按钮来显示其子视图。单击按钮时,它会调用“showChildView”方法。

从这段代码中,当应用程序启动时,它会显示带有按钮的“MainView”。但是当我单击该按钮时,该按钮以及“ChildView.xib”文件中的内容仍然可见。

按下按钮时如何隐藏“MainView”并仅显示“ChildView”的内容?

提前感谢您的帮助。

0 投票
2 回答
1452 浏览

iphone - 导航回视图时 UIWebView 变为空白

我有一个加载 UIWebView 的应用程序。这很好用。用户可以单击 Web 视图中的链接,然后创建一个新的视图控制器/Web 视图来加载链接,这也很有效。

不太好用的是,有时(可能是 1/4)当我回到最初的 web 视图时,视图是空白的。

控制器没有被释放,并且在两者之间没有收到内存警告。我完全感到困惑。

任何人都知道发生了什么,尤其是如何解决它?

以下是与控制器有关的任何方法:

初始控制器:

其他控制器(WebView):

0 投票
1 回答
2427 浏览

iphone - 有没有办法在 UIWebview 中启用触摸保持图像保存

好的,所以在移动 safari 中,您可以拉出一个网页并触摸并按住图像以将其保存到 iPhone 的照片库中。在视图上的 UIWebview 中不会发生这种情况(它会弹出替代文本并且从不提示您)。我想知道是否有人知道打开此功能的方法。