![](/img/trans.png)
[英]How do I enable horizontal scrolling and disable vertical scrolling in UIWebview?
[英]How to disable UIWebview horizontal scrolling?
我嘗試通過插入來禁用它:
<meta name="viewport" content="width=320" />
進入我的 HTML 字符串,以及上面的十幾種變體,希望我只是搞砸了標簽語法……但似乎沒有什么能阻止 UIWebView 水平滾動。 然而,有些應用程序可以做到這一點(例如 MobileRSS),並且大概因為它們沒有被拒絕,所以它們沒有使用私有 API。
我的版本,一個常見的解決方法:
- (void)webViewDidFinishLoad:(UIWebView *)webView {
[webView.scrollView setContentSize: CGSizeMake(webView.frame.size.width, webView.scrollView.contentSize.height)];
}
我最終設法解決了這個問題。 我已經嘗試過設置視口寬度值,但沒有奏效。 什么 DID 工作是使用 overflow:hidden 結合設置視口寬度。 無論如何感謝您的回答。
如果 webView 包含一個長度大於 webView 的單詞。 你必須打破那根弦。 所以在div中使用下面的代碼
自動換行:斷字;
您的網頁需要有兩個屬性:1——視口元標記和 2——320px 或更小的寬度,包括邊距和填充。
這是一個非常簡單的 HTML5 框架,它應該允許垂直滾動和禁止水平滾動,包括禁止水平彈跳。 這也不允許縮放——它假定您的網頁應始終以 1-1 的方式顯示給用戶。 如果您使用 UIWebView 來顯示用戶界面,這將非常有用。
<!doctype html>
<html>
<head>
<meta name="viewport" content="width=device-width, initial-scale=1, minimum-scale=1, maximum-scale=1, user-scalable=0" />
<style>
body {width:320px;margin:0;padding:0;}
</style>
</head>
<body></body>
</html>
將UIWebview
的UIScrollview
的委托(在 iOS5 上通過webview.scrollView
和在 iOS4 上通過遍歷子視圖樹並選擇UIScrollview
子視圖)設置為“self”並使用以下代碼:
-(void)scrollViewDidScroll:(UIScrollView *)scrollView{
[scrollView setContentOffset:CGPointMake(0, scrollView.contentOffset.y)];
}
完美運行,出於某種原因,我的 HTML 代碼水平溢出,不需要它。 這修復它。
<meta name="viewport" content="width=device-width, user-scalable=no initial-scale=1.0" />
Swift 5.0解決方案:
func webViewDidFinishLoad(_ webView: UIWebView) {
webView.scrollView.contentSize = CGSize(width: webView.frame.size.width, height: webView.scrollView.contentSize.height)
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.