在第二个视图中获取WebView AbsoluteString

时间:2012-03-04 22:28:56

标签: ios xcode webview nsuserdefaults tableview

我需要一些细节。我查看了多本书/论坛,我尽我所能地尝试了。但是,在这一点上,如果可能的话,我需要一些简单方向的外部帮助。我想尽可能简化这个目标,如果你需要什么,只要问问。

所以,这就是我要做的事情:

我有什么: 我目前有WebView视图,书签视图中有一个表格。我有NSUserDefaults将当前URL传递给书签视图并显示它(但不保存它)

目标是什么: 我需要在表的其余部分下面添加一个“添加书签”按钮,该按钮在另一个视图中获取WebView的当前字符串,并将其保存为表格的条目。

我需要什么: 所以,在这一点上(作为开始),我需要一种方法从另一个视图中获取WebView的URL并将其传输到书签视图,以便作为一行保存到表中。

我正在考虑通过调用absoluteString并保存到用户默认值来执行此操作,但我需要协助代码部分。我还不知道NSUserDefaults的完整用法,但我确实对它有一些经验。

感谢您的帮助!非常感谢!

  • 杰克

1 个答案:

答案 0 :(得分:0)

您应该在打开它之前将当前URL和标题传递给书签视图:

[bookmarks setUrl:webView.request.URL.absoluteString];
[bookmarks setTitle:[webView stringByEvaluatingJavaScriptFromString:@"document.title"]];
... open bookmark view now ...

一个完整的例子是:

- (IBAction)bookmarksPressed:(id)sender {

    // Open the book marks controller passing it the current URL and Title
    BookmarksViewController * bookmarksViewController = [[[BookmarksViewController alloc] initWithNibName:@"BookmarksViewController" bundle:nil] autorelease];
    [bookmarksViewController setUrl:webView.request.URL.absoluteString];
    [bookmarksViewController setTitle:[webView stringByEvaluatingJavaScriptFromString:@"document.title"]];
    [self presentModalViewController: bookmarksViewController animated:YES];

}