2016-07-14 2 views
0

Есть ли способ синхронизировать два веб-просмотра.WebView iOS - Сохраняйте два WebView 100% синхронизированы

Я бы хотел отобразить на втором экране, используя Airplay тот же WebView, но в формате 16: 9.

Мне удалось создать отдельное окно для второго экрана (это 16: 9) и загрузить локальный файл html, но действия на моем экране iPad не синхронизируются с этим вторым экраном.

У меня только два независимых окна. Я действительно хочу использовать второй экран для отображения большего HTML-файла.

ответ

1

«Синхронизированный» указан в OP, но с учетом наиболее существенного представления состояния веб-представления - это request, вы можете попробовать следующее: в контроллере webView, который пользователь контролирует (назовите его «webViewA» «), объявить о соответствии UIWebViewDelegate:

self.webViewA.delegate = self; 

тогда:

- (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType { 
    UIWebView *webViewB = // presuming you have a way to get this pointer 
    [webViewB loadRequest:request]; 
} 

Вы можете достичь прокрутки синхронизации (вероятно, следующий наиболее существенной частью государства), объявив тот же CONTROLL в соответствии с UIScrollViewDelegate, а затем:

self.webViewA.scrollView.delegate = self; 

- (void)scrollViewDidScroll:(UIScrollView *)scrollView { 
    UIWebView *webViewB = // ... 
    [webViewB setContentOffset:scrollView.contentOffset animated:YES]; 
} 
+0

Спасибо за ваш ответ. Я попробую это через несколько часов и буду держать вас в курсе. MustStartLoadWithRequest вызывается каждый раз, когда клик присоединяется или нет? Потому что, например, если в WebViewA я нажимаю и появляется всплывающее окно модального бутстрапа, мне нужно иметь это же всплывающее окно в WebView B – Aaleks

+0

. Я выполнил тест, а shouldStartLoadWithRequest вызывается только при загрузке новой страницы (нажмите href), а не на основное взаимодействие, действия javascript, модальное всплывающее окно. Мне действительно нужно иметь полную репликацию. – Aaleks

+0

Ваш комментарий разъясняет вопрос, чтобы определить «синхронизированный», как полностью, 100% синхронизированный. К сожалению, это невозможно между двумя веб-представлениями. – danh