2014-02-03 2 views
5

У меня есть UIWebView, показанный на экране iPad (iOS7, пейзаж). Веб-страница ровно 1024 x 768.Force iOS UIWebView для 1024px, не 1027px

Если я проверяю представление во время выполнения (используя openapp.com), я вижу, что ширина UIWebView составляет 1024 пикселя. Однако он содержит UIWebBrowserView внутри него, который показывает ширину 1027 пикселей.

enter image description here

Результатом этого является то, что пользователь может прокручивать веб-страницы 3px по горизонтали, что раздражает. Он должен идеально вписываться и быть «заблокирован» при загрузке страницы. Я все еще допускаю масштабирование с помощью этих настроек.

self.webView.delegate = self; 
self.webView.scrollView.bounces = NO; 
self.webView.scalesPageToFit = YES; 

Если я проверить DOM веб-страницы выполняется в приложении с помощью Safari, я могу видеть, что веб-страница сама по себе, безусловно, 1024px в ширину. Таким образом, кажется, что iOS вызывает проблему.

Итак, кто-нибудь знает, как я могу заставить UIWebBrowserView 1024px, а не 1027px?

Благодаря

Тобин

+0

Вы думаете о том, чтобы выполнить инициализатор или установить кадр? – user2277872

+0

Я установил рамку UIWebBrowserView в нужный размер при инициализации элемента. Что-то вроде этого: 'UIWebBrowserView * browser = [[UIWebBrowserView alloc] initWithFrame: CGRectMake (0, 10, self.view.frame.size.width, 30)];'. Вы уже это сделали? если self.view.frame.size.width не работает, просто попробуйте ** 512 ** вместо этого. – VaroX

ответ

0

Есть две вещи, которые вы могли бы попробовать здесь:

  1. Увеличить в содержании, используя scrollView свойство вашего UIWebView, установив это contentSize до нужного размера (вам может понадобиться играть с contentOffset, пока вы не получите его правильно).

  2. Установите соответствующий метку viewport на своей веб-странице, чтобы управлять макетом на мобильном устройстве. Что-то вдоль этих линий:

    <meta name="viewport" content="width=device-width, initial-scale=1">

Надеется, что это помогает.

Смежные вопросы