我为UIWebView设置了“scalesPageToFit”属性为YES。 它得到缩放,但当页面加载时,内容是微小的字体,无需捏就无法读取。我们可以将缩放比例设置为默认值吗?
答案 0 :(得分:3)
这更多是关于您正在加载的网站,然后是UIWebView本身......
如果您对显示的HTML有控制权,只需将<meta name="viewport" content="width=device-width;initial-scale=1.0">
放入<head>
。
如果没有:您可以将JavaScript注入UIWebView并执行它,因此可以使用一个小代码片段轻松插入元标记:
NSString *result = [webView stringByEvaluatingJavaScriptFromString:
[NSString stringWithFormat:@"var result = '';"
"var viewport = null;"
"var content = null;"
"var document_head = document.getElementsByTagName( 'head' )[0];"
"var child = document_head.firstChild;"
"while ( child )"
"{"
" if ( null == viewport && child.nodeType == 1 && child.nodeName == 'META' && child.getAttribute( 'name' ) == 'viewport' )"
" {"
" viewport = child;"
" viewport.setAttribute( 'content' , 'width=device-width;initial-scale=1.0' );"
" result = 'fixed meta tag';"
" }"
" child = child.nextSibling;"
"}"
"if (null == viewport)"
"{"
" var meta = document.createElement( 'meta' );"
" meta.setAttribute( 'name' , 'viewport' );"
" meta.setAttribute( 'content' , 'width=device-width;initial-scale=1.0' );"
" document_head.appendChild( meta );"
" result = 'added meta tag';"
"}"
]
];
请注意,该代码段会终止HTML代码作者所做的视口设置......所以您可能会得到奇怪的结果。