我想隐藏滚动UIWebView时出现的本机滚动条/滚动条,但仍保持滚动功能不变.这可能吗?
提前致谢,
威廉
看来这个问题需要一个更新的答案:
您可以直接访问与Web视图关联的滚动视图.(只读)在iOS 5.0以上版本中.除非在特殊情况下,我认为开发人员不应支持iOS 5.0之前的任何内容.
来自Apple开发人员文档.
@property(nonatomic, readonly, retain) UIScrollView *scrollView Discussion Your application can access the scroll view if it wants to customize the scrolling behavior of the web view. Availability Available in iOS 5.0 and later. Declared In UIWebView.h
现在你可以直接写这样的东西:
webView.scrollView.showsHorizontalScrollIndicator = NO; webView.scrollView.showsVerticalScrollIndicator = NO;
无需转到webView的子视图.
UIWebView
不直接继承UIScrollView
,但您可以UIScrollView
在UIWebView
子视图上使用属性:
[(UIScrollView*)[webview.subviews objectAtIndex:0] setShowsHorizontalScrollIndicator:NO]; [(UIScrollView*)[webview.subviews objectAtIndex:0] setShowsVerticalScrollIndicator:NO];
不知道这是否可以接受,但它构建良好,我认为它应该工作.请报告这是否适合您.
还可以考虑在bugreport.apple.com上向Apple提交功能请求,以将此属性添加到将来的UIWebView
实现中.
这样做:
for (id subview in self.myWebView.subviews) { if ([[subview class] isSubclassOfClass: [UIScrollView class]]) { ((UIScrollView *)subview).bounces = NO; ((UIScrollView *)subview).showsVerticalScrollIndicator = NO; ((UIScrollView *)subview).showsHorizontalScrollIndicator = NO; } }