我希望我的应用能够识别剪贴板的当前内容是否为URL,如果是,我希望它将该URL加载到Web视图中。
我正在使用以下语句来执行此检查:
if ([pasteboard containsPasteboardTypes: [NSArray arrayWithObject:@"public.url-name"]])
...code to load the URL into the webView
但它不起作用 - 即使剪贴板的内容显然是URL,IF语句也总是返回FALSE。
奇怪的是,当我删除这个IF语句并继续加载我从剪贴板中读取到webView的URL时,它运行得非常好。所以它绝对只是由于某种原因无效的IF声明。
这是完整的代码:
// executed on a Button-click:
-(IBAction) showClipBoard {
pasteboard = nil; // resetting the pasteBoard each time
pasteboard = [UIPasteboard generalPasteboard];
NSURL *tempURL = pasteboard.URL;
//Check the pasteboard's value-type:
if ([pasteboard containsPasteboardTypes: [NSArray arrayWithObject:@"public.url-name"]]) {
NSLog(@"URL is: %@", pasteboard.string);
NSURL *url = [NSURL URLWithString: pasteboard.string];
NSURLRequest *req = [NSURLRequest requestWithURL: url];
[webView loadRequest:req];
}
else
NSLog(@"=NOT a valid web-address");
NSString *tempString = [pasteboard valueForPasteboardType:@"public.utf8-plain-text"];
// Show the URL in a text-view box called "clipText":
clipText.text = tempString;
}
有人在这里看到了什么问题吗?
答案 0 :(得分:0)
你现在可能已经想到了这一点,但是,我遇到了同样的问题&以下对我有用: -
if ([pasteboard containsPasteboardTypes: [NSArray arrayWithObject:@"public.url"]])
...code to load the URL into the webView