UIWebView scalePageToFit не будет масштабировать страницу - PullRequest
2 голосов
/ 24 февраля 2012

У меня есть UIWebView, который, несмотря на то, что для scalePageToFit установлено значение YES, не выполняет никаких таких операций масштабирования: веб-страница начинается с увеличения, и необходимо открепить ее, чтобы получить всю информацию на странице.

Что может помешать выполнению UIWebView :: scalePageToFit?

Ответы [ 3 ]

3 голосов
/ 24 февраля 2012

Вы можете добавить элемент окна просмотра через JavaScript.

Найдите метатег viewport здесь: Метатеги Safari

<meta name="viewport" content="width=320, initial-scale=2.3, user-scalable=no">
1 голос
/ 15 марта 2012

Создайте файл в своем проекте с именем changePageWidth.js:

function changePageWidth(width) {
  var element = document.createElement('meta');
  element.name = "viewport";
  element.content = "width=" + width;
  var head = document.getElementsByTagName('head')[0];
  head.appendChild(element);
}

, а затем добавьте этот код в webViewDidFinishLoad: делегата UIWebView:

- (void)webViewDidFinishLoad:(UIWebView *)webView {
    NSString *path = [[NSBundle mainBundle] pathForResource:@"changePageWidth" ofType:@"js"];
    NSString *jsCode = [NSString stringWithContentsOfFile:path encoding:NSUTF8StringEncoding error:nil];
    [webView stringByEvaluatingJavaScriptFromString:jsCode];
    NSString *jsCall = [NSString stringWithFormat:@"changePageWidth(%d)", webView.frame.size.width];
    [webView stringByEvaluatingJavaScriptFromString:jsCall];
}
0 голосов
/ 24 февраля 2012

Может быть, вы можете использовать java-скрипт для изменения размера вашего браузера

NSString *jsCommand = [NSString stringWithFormat:@"document.body.style.zoom = 1.5;"];
webLookupView stringByEvaluatingJavaScriptFromString:jsCommand];
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...