如何为Web浏览器创建历史记录

时间:2012-02-11 20:02:48

标签: iphone objective-c ios ipad

我正在为iPad制作自己的网络浏览器,而我在尝试创建历史时遇到了问题。这是代码:

.m
-(void)viewDidLoad{
[self historyMethod];
//more settings...
}

-(void)historyMethod{
NSString *googleString= @"http://www.google.es";
    NSString *currentURLString=TextField.text;
    [historyArray addObject:googleString];
    if ([googleString isEqual: currentURLString]) {
        googleString = nil;
        [TableView reloadData];
    }


    [historyArray addObject: currentURLString ];
    [TableView reloadData];

}

我遇到的问题是historyMethod只执行一次,我需要它一直在工作!由于我是新手,我不太了解方法,以及如何使其运作良好。我用while loop尝试了它,但它没有用。请帮帮我!

2 个答案:

答案 0 :(得分:1)

你的意思是你希望重复调用该方法? 您可以使用NSTimer之类的内容重复方法调用;

[NSTimer scheduledTimerWithTimeInterval:1.0 target:self selector:@selector(historyMethod) userInfo:nil repeats:YES];

这将每隔1秒调用您的方法,将其放在viewDidLoad方法中,而不是调用historyMethod

但是,如果您不理解方法,我建议一些人寻找一些Objective-C教程。

答案 1 :(得分:1)

如果您使用的是UIWebView,那么您可能想让控制器成为UIWebViewDelegate

通过实施- (void)webViewDidFinishLoad:(UIWebView *)webView,您可以跟踪 正在加载的页面在此委托方法中,您可以通过webview.request.URL

获取网址

看看:

UIWebViewDelegate

UIWebViewDelegateProtocol

NSURLRequest