标签: uiwebview

在UIWebView中使用自定义字体

我想在UIWebView中显示自定义字体.我已经将字体放在"应用程序提供的字体"下的plist中.使用的代码:

        UIWebView *webView = [[UIWebView alloc] initWithFrame:myRect];
        NSURL *baseURL = [NSURL fileURLWithPath:[[NSBundle mainBundle] bundlePath]];
        [webView loadHTMLString:html baseURL:baseURL];
        [self addSubview:webView];
Run Code Online (Sandbox Code Playgroud)

其中html是一个NSString,具有以下内容:

<html><head>
<style type="text/css">
@font-face {
    font-family: gotham_symbol;
    src: local('GOTHAMboldSymbol_0.tff'), format('truetype') 
} 
body { 
 font-family: gotham_symbol;
font-size: 50pt;
}
</style>
</head><body leftmargin="0" topmargin="0">
This is <i>italic</i> and this is <b>bold</b> and this is some unicode: &#1101;
</body></html>
Run Code Online (Sandbox Code Playgroud)

我正在使用iOS 4.2,因此应该支持TTF.我很欣赏一些实际可行的HTML /代码.

fonts truetype uiwebview ios

54
推荐指数
3
解决办法
4万
查看次数

UIWebViewDelegate不监控XMLHttpRequest?

是否真的UIWebViewDelegate不监视使用XMLHttpRequest发出的请求?如果是这样,有没有办法监控这类请求?

例如,UIWebViewDelegate没有捕获到它-(BOOL) webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSMutableURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType;

var xhr = new XMLHttpRequest();
xhr.open("GET", "http://www.google.com", true);

xhr.onreadystatechange=function() 
{
    if (xhr.readyState==4) 
    {
        alert(xhr.responseText);
    }
}

xhr.send();
Run Code Online (Sandbox Code Playgroud)

ajax xcode xmlhttprequest uiwebview

53
推荐指数
2
解决办法
3万
查看次数

在WKWebView中使用自定义字体

我在我的应用程序中使用自定义字体.它们被复制到bundle并硬编码到appName-info.plist.这种字体在整个应用程序和UIWebView中都能很好地工作.

我正在加载htmlString [webView loadHTMLString:htmlString baseURL:nil]; 我在webView中使用这个字体与css: fontFamily: fontName

但是,当我尝试使用WkWebView自定义字体无法正常工作时.WkWebView显示随机默认字体.

我尝试使用基本URL中的主束路径加载它并在css中使用font-face - WkWebView仍然显示随机字体.

任何想法如何使自定义字体在WKWebView中工作?

对不起我的英语不好

css fonts uiwebview ios wkwebview

53
推荐指数
5
解决办法
2万
查看次数

Xcode 8,iOS 10 - "为进程启动WebFilter日志记录"

    WF: === Starting WebFilter logging for process Test
2016-09-30 08:56:45.458007 Test[616:142557] WF: _userSettingsForUser mobile: {
    filterBlacklist =     (
    );
    filterWhitelist =     (
    );
    restrictWeb = 1;
    useContentFilter = 0;
    useContentFilterOverrides = 0;
    whitelistEnabled = 0;
}
2016-09-30 08:56:45.458437 Test[616:142557] WF: _WebFilterIsActive returning: NO
Run Code Online (Sandbox Code Playgroud)

我在xcode 8,iOS-10中的调试器中收到此警告,当我使用UIWebView Delegate方法加载某些东西时.我没有在Apple网站上找到有关此Web过滤器Active/De-active模式的任何文档.虽然它在我现有的webView功能中没有引起任何问题,即使我在我的webView中运行了一些javascript函数也完成了方法.但仍然很想知道这个新功能的更多信息.

有关此功能的任何建议将不胜感激.

uiwebview ios ios10

53
推荐指数
2
解决办法
2万
查看次数

UIWebView didFinishLoading多次触发

我有一些代码需要在UIWebView完成加载文档后运行.为此,我已将UIWebView委托设置为我的控制器,并实现了该webViewDidFinishLoading方法.

这会被多次调用,具体取决于要加载的页面类型.我不确定是不是因为ajax请求,图像请求,甚至是iframe.

有没有办法告诉主要请求已经完成,这意味着HTML已完全加载?

或者可能会延迟我的代码触发,直到所有这些事件都完成了?

iphone xcode objective-c uiwebview ios

52
推荐指数
5
解决办法
4万
查看次数

出现在UIWebView底部的黑线.怎么删除?

我在嵌入在表格单元格中的webview中呈现一些html.出于某种原因,webview底部有一条黑线.我尝试将webview的背景颜色及其scrollview设置为白色,但这并没有改变任何东西.谁看过这个吗?UIWebView底部带有黑色线条

这是正在呈现的HTML:

<html>
<head>

    <style type="text/css">
a {text-decoration:none;background-color:white;}
    </style>

    <title></title>
</head>

<body style="margin:0;padding:0;background-color:white;">
    <a href="http://body/" style=
    "font-family:HelveticaNeue-Light;font-size:20.000000;color:black;-webkit-tap-highlight-color:rgba(0,0,0,0);">
    Portland Blazers vs Golden State Warriors | FULL Highlights | January 26 ,
    2014 | NBA 2013-14 Season</a><span style=
    "font-family:HelveticaNeue;font-size:12.000000;color:rgb(102,102,102);white-space:nowrap;"><a href="https://www.youtube.com/watch?v=2TfldZ4w57E&amp;feature=youtube_gdata_player"
    style=
    "font-family:HelveticaNeue;font-size:12;color:rgb(102,102,102);-webkit-tap-highlight-color:rgba(0,0,0,0);"><img height="12"
    src="file:link@2x.png" width="20">www.youtube.com</a></span>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)

这是在iOS7上.

更新:我仍然不确定是什么导致黑线出现但我设法通过改变我设置布局约束的方式摆脱它.在我为视图周围的间距设置约束并让布局系统确定视图应该是的大小之前.当webview完成加载其内容时,我将其更改为显式设置webview的高度约束.这似乎解决了这个问题,但我仍然不明白黑线的来源.

html css uiwebview ios

52
推荐指数
1
解决办法
1万
查看次数

HTML内容适合UIWebview而不缩小

我正在利用它UIWebView来渲染一些HTML.但是,虽然我的webview的宽度是320,但我的HTML仍然显示为全宽,并且可以水平滚动.

我希望实现本机邮件应用程序实现的相同功能,即它适合该宽度内的所有内容而不缩小 - 本机邮件应用程序如何呈现这样的HTML?

更新

我认为使用视口元标记会有所帮助,但我无法让它工作.

这就是发生的事情:

在此输入图像描述

如您所见,内容不适合设备宽度.我尝试了很多viewportmeta标签组合.下面是我尝试Martins建议时会发生什么的一个例子.

原始HTML可以在这里找到.

机邮件应用程序呈现此HTML的方式就是这样.

iphone objective-c uiwebview

51
推荐指数
4
解决办法
8万
查看次数

UIWebView查看自签名网站(没有私人API,不是NSURLConnection) - 有可能吗?

有很多问题要问:我可以UIWebView查看自签名的HTTPS网站吗?

答案总是涉及:

  1. 使用私人api调用NSURLRequest:allowsAnyHTTPSCertificateForHost
  2. 使用NSURLConnection代替和委托canAuthenticateAgainstProtectionSpace

对我来说,这些都不行.
(1) - 表示我无法成功提交到应用商店.
(2) - 使用NSURLConnection意味着在加载初始HTML页面后必须从服务器获取的CSS,图像和其他内容.

有谁知道如何使用UIWebView查看自签名的https网页,这不涉及上述两种方法?

或者 - 如果使用NSURLConnectioncan实际上可以用来渲染一个完整的CSS,图像和其他所有的网页 - 这将是伟大的!

干杯,
拉伸.

iphone uiwebview ios

49
推荐指数
4
解决办法
6万
查看次数

如何在iPhone上显示来自API的HTML文本?

解释我的情况的最好例子是使用博客文章.假设我有一个UITableView,它载有我从API获得的博客帖子的标题.当我点击一行时,我想显示详细的博文.

这样做时,API会传回几个字段,包括"post body"(HTML文本).我的问题是,我应该使用什么来显示它,以便它显示为格式化的HTML?我应该使用UIWebView吗?我不确定你是否在浏览网页时使用UIWebView(比如用URL或其他东西初始化它),或者你可以将它交给HTML字符串,它会正确地格式化它.

此页面上还会显示其他几个字段,例如标题,类别,作者等.我只是使用UILabel,所以没有问题.但我不知道如何处理HTML块.我正在以编程方式完成所有这些工作.顺便说一句.

如果你不能说,我对iOS开发相对较新,只有2-3周左右,没有obj-c背景.因此,如果UIWebView是正确的方法,我也会感激任何"陷阱!" 注意,如果有的话.

iphone objective-c uiwebview uitextview ios

46
推荐指数
4
解决办法
4万
查看次数

带有本地图像文件的iOS WebView远程html

之前已经提出过类似的问题,但我找不到解决方案.

这是我的情况 - 我的UIWebView加载了一个远程html页面.网页中使用的图像在构建时是已知的.为了使页面加载更快,我想将图像文件打包到iOS应用程序中并在运行时替换它们.

[请注意,html是远程的.我总是得到从本地加载html和图像文件的答案 - 我已经这样做了]

我得到的最接近的建议是在html页面和iOS应用程序中使用自定义URL方案,如myapp://images/img.png,使用NSURLProtocol子类截取myapp:// URL并用本地替换图像图片.在理论上听起来不错,但我没有遇到一个完整的代码示例来证明这一点.

我有Java背景.我可以使用自定义内容提供商轻松地为Android做到这一点.我相信iOS/Objective-C必须存在类似的解决方案.我没有足够的Objective-C经验可以在很短的时间内自行解决.

任何帮助将不胜感激.

html iphone image uiwebview nsurlprotocol

46
推荐指数
2
解决办法
4万
查看次数