我有一个非常简单的UIWebView,其中包含我的应用程序包中的内容.我希望Web视图中的任何链接都在Safari中打开,而不是在Web视图中打开.这可能吗?
有谁知道如何阻止UIWebView垂直弹跳?我的意思是当用户触摸他们的iPhone屏幕时,向下拖动他们的手指,webview在我加载的网页上方显示一个空白点?
我已经看过以下可能的解决方案,但它们都不适用于我:
我正在尝试将html文件加载到我的UIWebView中,但它不起作用.这是舞台:我的项目中有一个名为html_files的文件夹.然后我在界面构建器中创建了一个webView,并在viewController中为它分配了一个插座.这是我用来附加html文件的代码:
-(void)viewDidLoad
{
NSString *htmlFile = [[NSBundle mainBundle] pathForResource:@"sample" ofType:@"html" inDirectory:@"html_files"];
NSData *htmlData = [NSData dataWithContentsOfFile:htmlFile];
[webView loadData:htmlData MIMEType:@"text/html" textEncodingName:@"UTF-8" baseURL:[NSURL URLWithString:@""]];
[super viewDidLoad];
}
Run Code Online (Sandbox Code Playgroud)
这不起作用,UIWebView是空白的.我很感激一些帮助.
我的应用程序中有一个UIWebView,我想用它来显示一个链接到另一个URL的图像.
我正在使用
<img src="image.jpg" /> to load the image.
Run Code Online (Sandbox Code Playgroud)
问题是图像没有加载(即无法找到),即使它已作为资源添加到我的项目中并被复制到包中.
我已经尝试使用NSBundle来获取图像的完整路径并使用它,它仍然没有显示在Web视图中.
有任何想法吗?
我需要从UIWebView中显示的HTML页面中提取title标签的内容.这样做最有力的方法是什么?
我知道我能做到:
- (void)webViewDidFinishLoad:(UIWebView *)webView{
NSString *theTitle=[webView stringByEvaluatingJavaScriptFromString:@"document.title"];
}
Run Code Online (Sandbox Code Playgroud)
但是,这仅在启用了javascript时才有效.
或者,我可以只扫描标题的HTML代码文本,但这感觉有点麻烦,如果页面的作者对他们的代码变得怪异,可能会很脆弱.如果是这样,那么在iPhone API中处理html文本的最佳方法是什么?
我觉得我已经忘记了一些明显的东西.有没有比这两种选择更好的方法?
以下是对这个问题的回答:UIWebView:你可以禁用Javascript吗?似乎没有办法在UIWebView中关闭Javascript.因此,上面的Javascript方法将始终有效.
我正在使用iOS SDK最新版本和XCode 4.2开发iOS 4应用程序.
我有一个XIB,UIWebView其中Alpha = 1.0,背景设置为Clear Color,而Opaque未设置.在这个XIB上,我使用以下代码将图像设置为背景:
- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
{
self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
if (self) {
UIColor *background = [[UIColor alloc] initWithPatternImage:[UIImage imageNamed:@"AboutBackground.png"]];
self.view.backgroundColor = background;
[background release];
}
return self;
}
Run Code Online (Sandbox Code Playgroud)
在UIWebView是否显示静态的html:
<html><head></head><body style=\"margin:0 auto;text-align:center;background-color: transparent; color:white\">...</body></html>
Run Code Online (Sandbox Code Playgroud)
在iOS 5模拟器上,它的背景是透明的,但在iOS 4设备上是灰色的.
任何线索?
我有一个UIWebView内部UIScrollView(scrollview包含另一个组件)
我试图启用多点触控两种界面生成器或编程上UIWebView,但它仍然不能放大为HTML,我需要同时处理的放大UIScrollView和UIWebView?或者我还有什么不设置的?
是否可以读取已加载到的网页的原始HTML内容UIWebView?
如果没有,是否有另一种方法从iPhone SDK中的网页(例如.NET的等价物WebClient::openRead)中提取原始HTML内容?
我试图找出为什么使用Javascript的东西在UIWebView中不起作用.据我所知,没有办法在XCode中为js文件设置断点.没问题,我将回到2004年并使用警报状态 - 哦等等他们似乎也不在UIWebView内部工作!
我唯一能想到的是将我的HTML和JS文件导出到我的桌面,然后在Safari中进行调试.这有效!但是,当然,我在UIWebView中遇到的错误在Safari中不会发生.
是否还有其他方法可以在UIWebView内部进行调试,或者使用类似于使用老派警报方法的任何技巧?
我有一个非常简单的iOS应用程序,带有uiwebview加载一个非常简单的测试页面(test.html):
<html>
<body>
<img src="img/myimage.png" />
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
我将此test.html文件加载到我的Web视图中:
NSURL *url = [[NSBundle mainBundle] URLForResource:@"test" withExtension:@"html"];
NSString *html = [NSString stringWithContentsOfURL:url encoding:NSUTF8StringEncoding error:nil];
NSURL *baseUrl = [NSURL fileURLWithPath:[[NSBundle mainBundle] bundlePath]];
[webView loadHTMLString:html baseURL:baseUrl];
Run Code Online (Sandbox Code Playgroud)
如果我在没有相对路径的情况下引用图像并将引用的图像放在根目录下的根目录下 - >在XCode中复制捆绑资源,这可以正常工作,但是我无法使用我的html文件中显示的相对路径.必须有一种方法可以做到这一点,我有很多图像,CSS,javascript文件,我想加载到webview中,我希望不必拥有根目录中的所有内容,并且必须更改我的网站中的所有引用应用程序.
uiwebview ×10
ios ×8
iphone ×7
objective-c ×5
cocoa-touch ×3
html ×2
foundation ×1
html5 ×1
javascript ×1
uikit ×1
uiscrollview ×1
zoom ×1