webView不会加载页面

时间:2016-02-25 11:23:13

标签: ios objective-c webview

我发现了问题......我发现berria1的价值有" \ n"在网址的末尾。在那里,他没有得到这个,但这就是问题。

我传递了非常好奇的东西,但没有找到任何解释。

事实是,在应用程序中,我正在解析一些新闻并将其保存在CoreData中,然后在UITableView中显示新闻列表,如果我点击其中一个带我到UIWebView在哪个位置链接与完整的故事。现在变得奇怪......

如果我将NSURL包含网址的CoreData变量传递给NSString,请不要加载,如果我将相同的方向传递给NSString并且UIWebView 1}}到UIWebView-(void)viewWillAppear:(BOOL)animated{ [super viewWillAppear:animated]; self.webView.delegate = self; NSString *berria1 = [[NSString alloc]init]; berria1 = [NSString stringWithFormat:@"%@",self.abisua.noticia]; NSString *berria2 = @"http://www.vitoria-gasteiz.org/we001/was/we001Action.do?idioma=eu&aplicacion=wb021&tabla=contenido&uid=u_47906a5c_14eabe80aeb__7fe9"; NSURL *url = [NSURL URLWithString:berria1]; NSURLRequest *urlRequest = [NSURLRequest requestWithURL:url]; [self.webView loadRequest:urlRequest]; NSLog(@"El contenido de la noticia 1 es %@", berria1); NSLog(@"El contenido de la noticia 2 es %@", berria2); } 正常加载。以下是我的代码。

NSLog

使用foo()我看到变量的值与您在下图中看到的相同。

The value of the two variables in the NSLog

Image - Debug window - URL is nil

那可能会发生什么?

谢谢。

4 个答案:

答案 0 :(得分:0)

它不是berria1,它将URL保存为berria2。

NSURL *url = [NSURL URLWithString:berria2];

在这里你试一下,网站很慢,所以需要一些时间来加载

NSString *berria2 = @"http://www.vitoria-gasteiz.org/we001/was/we001Action.do?%20%20%20%20idioma=eu&aplicacion=wb021&tabla=contenido&uid=u_47906a5c_14eabe80aeb__7fe9";

NSURL *myUrl = [NSURL URLWithString:berria2];

NSURLRequest *myRequest = [NSURLRequest requestWithURL:myUrl];

[self.webView loadRequest:myRequest];

答案 1 :(得分:0)

试试这个。我没有看到任何代码如何将请求加载到webview。但我添加了该部分的代码。将其替换为您的webview。

NSString *myurlString = [NSString stringWithFormat:@"%@",self.abisua.noticia];
NSString *cleanedUrl = [myurlString stringByAddingPercentEncodingWithAllowedCharacters:[NSCharacterSet URLFragmentAllowedCharacterSet]];

NSURL *myUrl = [NSURL URLWithString:cleanedUrl];
NSURLRequest *myRequest = [NSURLRequest requestWithURL:myUrl];

UIWebView *mywebview = [[UIWebView alloc] init];
[mywebview loadRequest:myRequest];

答案 2 :(得分:0)

您是iOS开发人员的新手,我已经看到您的代码,您添加第二个字符串为url为什么仍然理解只是尝试添加第二个字符串

NSURL *url = [NSURL URLWithString:berria2];

答案 3 :(得分:0)

我终于找到并修复了问题。

问题是变量收到了Core Data并传递给NSString,我不知道怎么回事,但链接在URL&#34结束时添加了这些字符; \ n"

调试区域中的

Berria1变量值为:

berria1 __NSCFString *  @"http://www.vitoria-gasteiz.org/we001/was/we001Action.do?idioma=eu&aplicacion=wb021&tabla=contenido&uid=u_47906a5c_14eabe80aeb__7fe9\n      "  0x0000000126d9e6c0

然后,当我将此值传递给NSURL并找到这些字符时,NSURL值传递给nil。

然后我解决了这个问题,将此NSString传递给NSMutableString并删除这些字符,然后使用以下代码传递给NSURL

NSString *berria1 = self.abisua.noticia;

NSMutableString * miCadena = [NSMutableString stringWithString: berria1];
[miCadena deleteCharactersInRange: [miCadena rangeOfString: @"\n      "]];

感谢大家的帮助