iOS: UIWebView полностью открытый браузер? - PullRequest
4 голосов
/ 11 августа 2011

Кто-нибудь знает, есть ли какие-нибудь решения с открытым исходным кодом, которые используют UIWebview для создания полноценного браузера? Когда вы передаете URL-адрес, в Three20 происходит нечто подобное, но я предполагаю, что должны быть и другие альтернативы.

Я понимаю, что UIWebView - это веб-браузер, но подключение обновления, кнопки «Назад», панели URL и т. Д. Займет дополнительное время.

Предложения

Ответы [ 5 ]

10 голосов
/ 11 августа 2011

SVWebViewController очень похоже на то, что вы ищете.

5 голосов
/ 12 сентября 2013

https://github.com/ghostery/banshee

РЕДАКТИРОВАТЬ проект поддерживается здесь: https://github.com/acatighera/banshee

Это браузер с открытым исходным кодом с вкладками, закладками, поиском и т. Д.

enter image description here

5 голосов
/ 06 сентября 2011

Я запустил проект с открытым исходным кодом (лицензия MIT), чтобы сделать что-то максимально приближенное к нативному приложению MobileSafari (на iPhone и iPad).

Вот некоторые функции:

  • Дизайн, близкий к собственному приложению Mobile Safari (iOS 4.x) (для iPhone и iPad)
  • Поддержка закладок (поддержка папок в закладках еще не реализована)
  • Почтаподдержка ссылок
  • Поддержка печати веб-страницы
  • Обработка длинных нажатий (открытие или копирование ссылки) с настраиваемым меню

Любой желающий внести свой вклад в этот проект может сделатьit!

Вы можете клонировать / разветвлять проект здесь: https://github.com/sylverb/CIALBrowser

3 голосов
/ 11 августа 2011

UIWebView - это полноценный браузер! Чтобы открыть URL в webView, вы делаете это -

NSURL *url        = [NSURL URLWithString:webAddress];
NSURLRequest *req = [NSURLRequest requestWithURL:url];
[webView loadRequest:req];

Вы можете даже вставить javascript в UIWebView. Вы можете настроить его по своему вкусу.

//To customize the look & feel...
self.webView.scalesPageToFit     = YES;
self.webView.autoresizingMask    = UIViewAutoresizingFlexibleWidth|UIViewAutoresizingFlexibleHeight;
self.webView.autoresizesSubviews = YES;

//To insert Javascript
NSString *jsCommand = [NSString stringWithFormat:@"document.body.style.zoom = 0.5;"];
[self.webView stringByEvaluatingJavaScriptFromString:jsCommand];

Вы могли бы сделать намного больше. Веселись ...

ОБНОВЛЕНИЕ: Чтобы получить кнопку возврата и все, webView предоставляет эти функции, назад, вперед и т. Д. Все эти функции браузера. Вам нужно кодировать кнопки и пользовательский интерфейс, и для кода вы можете сделать это -

-(IBAction)goForward:(id)sender
{
    [webView goForward];
}

-(IBAction)goBack:(id)sender
{
    [webView goBack];
}

-(IBAction) gotoHome:(id)sender
{
    NSString *urlAddress = @"http://google.com";
    NSURL *url = [NSURL URLWithString:urlAddress];
    NSURLRequest *requestObj = [NSURLRequest requestWithURL:url];
    [webView loadRequest:requestObj];
}
1 голос
/ 29 сентября 2014

Вы также можете проверить KINWebBrowser, модуль веб-браузера для ваших приложений. https://github.com/dfmuir/KINWebBrowser

Особенности

  • Поддержка iOS 7 и 8 для iPhone и iPad
  • Настраиваемый пользовательский интерфейс
  • Поддержка портретной и альбомной ориентации
  • Использовать с существующим UINavigationController или представлять модально
  • Загрузить URL из NSURL или NSString
  • Протокол делегирования для обратных вызовов состояния
  • Кнопка действия, позволяющая пользователям копировать URL, делиться или открывать в Safari & Google Chrome
  • Поддерживает подклассы
  • Установка с CocoaPods
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...