gpt4 book ai didi

ios - 如何处理未知方案,对 webview 不执行任何操作?

转载 作者:行者123 更新时间:2023-11-29 04:47:04 26 4
gpt4 key购买 nike

UIViewController *webViewController = [[[UIViewController alloc] init] autorelease];

UIWebView *uiWebView = [[[UIWebView alloc] initWithFrame: CGRectMake(0,0,320,480)] autorelease];
NSString *urlst=[[NSString alloc]initWithString:[catWebArray objectAtIndex:indexPath.row]];
[uiWebView loadRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:urlst]]];
uiWebView.scalesPageToFit=YES;
[webViewController.view addSubview: uiWebView];

[self.navigationController pushViewController:webViewController animated:YES];

其中数组包含诸如 www.google.com、www.yahoo.com 之类的地址。由于这些是由用户添加的,因此 http://可能会添加也可能不会。那么我如何在 uiwebview 中加载它?

最佳答案

您没有指定应用程序的用户界面是什么样子,也没有指定用户在 URL 中实际输入的方式,因此我只是假设它是一个类似于 Mobile Safari 使用的文本字段。

您可以编写一个在执行 requestWithURL 调用之前调用的方法,如果您没有看到用户输入的 URL 前面的方案,则可以使用 http:// 添加到其上。

EG

- (NSString *) fullyFormedURL: (NSString *) originalURL
{
NSRange rangeOfScheme = [originalURL rangeOfString: @"://"];
if(rangeOfScheme.location == NSNotFound)
{
NSString * newURL = [NSString stringWithFormat: @"http://%@", originalURL];
}
return(originalURL);
}

(上面的这段代码并不完美,但旨在帮助您入门... rangeOfString 调用没有考虑粗手指用户可能会做的事情,例如在末尾放置一个方案字符串...例如 "www.google.comhttp://")

关于ios - 如何处理未知方案,对 webview 不执行任何操作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9480209/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com