Получение WebView AbsoluteString во втором представлении - PullRequest
0 голосов
/ 05 марта 2012

Мне нужны некоторые детали. Я просмотрел несколько книг / форумов и старался изо всех сил самостоятельно. Однако на данный момент мне нужна помощь извне с простыми указаниями, если это вообще возможно. Я пытаюсь сделать это как можно проще для достижения цели, и если вам что-то нужно, просто спросите.

Итак, вот что я пытаюсь сделать:

Что у меня есть: В настоящее время у меня есть представление WebView и представление закладок с таблицей в нем. У меня есть NSUserDefaults, передающий текущий URL в представление закладок и отображающий его (но не сохраняющий его)

Какова цель: Мне нужно добавить кнопку «Добавить закладки» под остальной таблицей, которая получает текущую строку WebView в другом представлении и сохраняет ее как запись в таблице.

Что мне нужно: Итак, на данный момент (для начала) мне нужен метод получения URL-адреса WebView из другого представления и его переноса в представление закладок для сохранения в виде строки в таблице.

Я думал о том, чтобы сделать это, вызвав absoluteString и сохранив значения по умолчанию для пользователя, но мне нужна помощь для части кода. Я еще не знаю полного использования NSUserDefaults, но у меня есть некоторый опыт работы с ним.

Спасибо за помощь! Это очень ценится!

  • Джейк

1 Ответ

0 голосов
/ 05 марта 2012

Вы должны передать текущий 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];

}
...