我想透過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