我想透过UIWebView
透明UIToolBar
,以便用户获得更广泛的视角和概览。UIWebView上的透明UIToolBar
但是,当我这样做时,你看不到页面的底部。我想过在底部设置偏移量,但这是不可信的,因为缩放级别可能会有所不同(并且每个像素的价值会更低)。
如何使webView
滚动并停在UIToolBar
的顶部边缘?
我想透过UIWebView
透明UIToolBar
,以便用户获得更广泛的视角和概览。UIWebView上的透明UIToolBar
但是,当我这样做时,你看不到页面的底部。我想过在底部设置偏移量,但这是不可信的,因为缩放级别可能会有所不同(并且每个像素的价值会更低)。
如何使webView
滚动并停在UIToolBar
的顶部边缘?
我尝试了Emils解决方案,但它不适用于iOS7,因为它从UIWebViewScrollView
继承。因此,他的代码适用于以下内容:
for (id view in [self.webView subviews]){
if ([view respondsToSelector:@selector(setContentInset:)]){
[(UIScrollView *)view setContentInset:UIEdgeInsetsMake(0, 0, 44, 0)];
}
}
这听起来像你不希望UIToolbar重叠你的UIWebView。相反,您要设置其框架,以便UIWebView只扩展到UIToolbar开始的位置。
如果以编程方式设置这两个视图,只需将UIWebView框架的高度设置为其父框架的大小即UIToolbar框架的高度即可。如果你在InterfaceBuilder中这样做,只需拖动UIWebView的底部边缘来调整它的大小,使其停止在UIToolbar开始的位置,或者在检查器中修改其框架。
我固定它通过在UIWebView中的UIScrollView的-子视图设置的插图:
for (id view in [webView subviews]){
if ([view isMemberOfClass:[UIScrollView class]]){
[(UIScrollView *)view setContentInset:UIEdgeInsetsMake(0, 0, 44, 0)];
}
}
看起来和伟大工程!
您必须设置contentInset和scrollIndicatorInsets。如果你没有设置scrollIndicatorInsets,那么滚动指标将会出现在你的UIToolbar下面,这看起来不正确。
float toolbarHeight = toolbar.frame.size.height;
UIEdgeInsets insets = webView.scrollView.contentInset;
insets.bottom = toolbarHeight;
[webView.scrollView setContentInset:insets];
UIEdgeInsets indicatorInsets = webView.scrollView.scrollIndicatorInsets;
indicatorInsets.bottom = toolbarHeight;
[webView.scrollView setScrollIndicatorInsets:indicatorInsets];
透明工具栏的全部要点是展示它下面的东西。所以不,我不希望UIWebView停在toolBar上方。 – Emil 2010-11-05 22:55:01
对不起,我想我不明白你在做什么。 – Ryan 2010-11-05 22:58:47
排序的照片应用程序,只是我希望“图像”的底部边缘能够滚动工具栏的边缘! :) – Emil 2010-11-05 23:07:54