因此,只有当我的UIWebView
当前位于特定网址时,我才会隐藏图片。例如,如果我的UIWebView
中当前显示“example1.com/cheese”,那么我将隐藏图像。我不知道如何检查是否加载了特定的URL。我正在尝试这个:
- (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request {
NSString *host = [request.URL host];
if ([host != isEqualToString:@"example1.com/cheese"]) {
image.hidden = NO;
}
else
image.hidden = YES;
}
我的问题在于我的if
声明。我不确定如何做“不等于这个URL”。有谁知道我需要更改或添加来解决这个问题?
更新:这是我正在使用的代码,出现的错误是Use of undeclared identifier, host.
:
- (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request {
if (![host isEqualToString:@"exampleURL.com/cheese"]) {
image.hidden = NO;
} else {
image.hidden = YES;
}
}
答案 0 :(得分:2)
这是基本的Objective-C(真正的C)语法:
if (![host isEqualToString:@"someURL"]) {
// doesn't match
} else {
// does match
}
!
表示“不是”。它否定了表达的结果。由于isEqualToString:
如果两个字符串相等则返回YES
,!
将其否定为NO
。如果两个字符串不相等,则NO
结果将被否定为YES
。
你也可以这样做:
// Hide image if host matches "someURL"
image.hidden = [host isEqualToString:@"someURL"];