После просмотра многочисленных сообщений о переполнении стека мне не удалось найти решение моей проблемы. Если я задаю вопрос, на который уже был дан ответ в другом месте, любезно дайте мне кивнуть в правильном направлении.Xcode/iOS6/UIWebView URL/HTML-ссылки не работают
И, пожалуйста, не будьте слишком суровы на меня, если я могу использовать неправильную терминологию, поскольку я по-прежнему новичок в мобильной разработке.
Проблема: Все, что я пытаюсь сделать, - это щелкнуть ссылку на локальной веб-странице, которая затягивается в UIWebView. В настоящее время ничего не происходит, когда я нажимаю ссылку, кроме краткой вспышки текущей страницы.
Это где я нахожусь:
1) При загрузке приложения, я покажу веб-просмотр, который отображает «локальную» веб-страницу (это часть моей Xcode проекта). Все идет нормально.
2) Когда конечный пользователь нажимает на элемент (географические регионы в моем случае, представленные флагом), появляется дополнительный контент, в том числе несколько ссылок, приводящих к «внешним» веб-сайтам, таким как википедия и веб-сайт карты.
3) Большая часть моего маленького веб-приложения находится на веб-странице, которую я показываю, когда приложение загрузилось. Я использую JavaScript, HTML и CSS для обеспечения большей части функциональности (поскольку у меня уже есть веб-сайт, который делает именно то, что он должен делать).
4) Тем не менее, иметь возможность связываться с другими веб-сайтами с моей начальной страницы имеет решающее значение.
(Если вы считаете, что это плохой дизайн, я согласен с этим. Предложения по лучшим подходам всегда приветствуются, ОДНАКО, мне нужно решить мою текущую проблему, прежде чем я смогу перестроить свой код. Пожалуйста, несите меня.)
Вот код, который вызывает исходную веб-страницу:
// View Controller.h
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#import <UIKit/UIKit.h>
@interface ViewController : UIViewController
@property (strong, nonatomic) IBOutlet UIWebView *spfWebView;
@end
// ViewController.m
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#import "ViewController.h"
@interface ViewController()
@end
@implementation ViewController
@synthesize spfWebView;
- (void)viewDidLoad{
[super viewDidLoad];
//Web Site within XCode Project:
NSURL *url = [NSURL fileURLWithPath:[[NSBundle mainBundle] pathForResource:@"www/index" ofType:@"html"] isDirectory:NO];
//NSURL *url = [NSURL URLWithString:urlString];
NSURLRequest *request = [NSURLRequest requestWithURL:url];
NSOperationQueue *queue = [[NSOperationQueue alloc] init];
[NSURLConnection sendAsynchronousRequest:request queue:queue
completionHandler:^(NSURLResponse *response, NSData *data, NSError *error) {
if ([data length] > 0 && error == nil){
[spfWebView loadRequest:request];
}else if (error != nil){
NSLog(@"Error: %@", error);
}
}];
}
- (void)didReceiveMemoryWarning{
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation{
return (interfaceOrientation != UIInterfaceOrientationPortraitUpsideDown);
}
@end
так в моей веб-странице, я использую стандартные, обычные A HREF ссылки, чтобы указать на википедии, например, вот так (у меня было использовать пробелы в части href, чтобы избежать того, чтобы SO интерпретировал ее как ссылку, так как я только хотел показать вам код для ссылки):
<a href ="http://en.wikipedia.org/wiki/Schaffhausen">Wikipedia</a>
И, как я уже упоминал, страница просто сидит там, когда я нажимаю или нажимаю ссылку. Кажется, что страница кратковременно перезагружается и мигает на экране, но это все, что я вижу.
Любые идеи кто-нибудь?