2016-02-25 2 views
0

Я НАЙДЕНО ПРОБЛЕМА ... Я обнаружил, что значение berria1 имеет «\ n» в конце URL-адреса. где он не получает этого, но это проблема.webView не загружает страницу

Прошел очень любопытный предмет и который не нашел никаких объяснений.

Дело в том, что в приложении, я разборе некоторые новости и сохранить их в CoreData, а затем показать список новостей в UITableView, и если я нажимаю на один из них приводит меня к UIWebView в каком положении ссылку с полной историей. Теперь приходит странный ...

Если я перехожу к NSURL переменным, на которую я восстановление CoreData, который содержит веб-адрес, не загружайте, если я прохожу в том же направление к NSString и это NSString к UIWebView, то 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 я вижу, что значения переменных такие же, как вы видите на рисунке.

The value of the two variables in the NSLog

Image - Debug window - URL is nil

Это могло произойти?

спасибо.

+0

, где ваша часть кода запроса нагрузки на веб-представление –

+0

показать мне запрос загрузки на веб-представление –

+0

Установить NSAppTransportSecurity ключ для NSAllowsArbitraryLoads в info.plist –

ответ

0

Я наконец-то нашел и исправил проблему.

Проблема заключалась в том, что переменная получила ти Core Data и перейти к NSString, я не знаю, как, но ссылка добавила эти символы в конце URL «\ п»

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 значение перейти к нулю.

Тогда я решил эту проблему, передавая эту NSString к NSMutableString и стирать эти символы перед прохода в NSURL с этим кодом:

NSString *berria1 = self.abisua.noticia; 

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

Спасибо всем за вашу помощь

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]; 
+0

Rahul, berria1 и berria2 имеют одинаковый URL-адрес, я передаю URL-адрес berria1, восстанавливая его в основных данных. если вы видите изображение, две переменные имеют один и тот же URL. –

0

Попробуйте это. Я не видел никакого кода, как вы загружаете запрос в 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]; 
+0

Это не работает, делает то же самое, –

+0

обновил ответ. Если это также не работает, поместите свой код, где вы загружаете запрос на свой веб-просмотр. –

0

привет Я новичок в IOS разработчик, я видел ваш код в том, что ваш добавления второй строки к URL, почему до сих пор понять, попробуйте добавить 2-ю строку

NSURL *url = [NSURL URLWithString:berria2]; 
+0

Я пытаюсь передать первый berria1 и второй berria2 с тем же URL и одним хорошо работает, а другой нет с тем же адресом. –

+0

oh kk, который работает с url –

+0

Я обнаружил, что значение одной berria имеет «\ n» в конце URL-адреса. где он не получил этого, но в этом проблема –