【发布时间】:2010-02-10 17:26:04
【问题描述】:
我正在使用 UIWebView 来显示一个简单的 HTML 页面。当我滚动页面(顶部或底部)时,后面会出现阴影灰色! 我可以消除或避免这种不良影响吗?
谢谢
附: UIWebView,View 容器,都是背景透明不透明 NO!!
【问题讨论】:
-
为什么他们把这个愚蠢的影子放进去却没有提供去除它的方法是我无法理解的。
标签: iphone objective-c uiwebview
我正在使用 UIWebView 来显示一个简单的 HTML 页面。当我滚动页面(顶部或底部)时,后面会出现阴影灰色! 我可以消除或避免这种不良影响吗?
谢谢
附: UIWebView,View 容器,都是背景透明不透明 NO!!
【问题讨论】:
标签: iphone objective-c uiwebview
阴影属于UIImageView 类。您可以遍历UIWebView 的第一个子视图的视图,并隐藏与UIImageView 匹配的所有视图。
id scrollview = [webView.subviews objectAtIndex:0];
for (UIView *subview in [scrollview subviews])
if ([subview isKindOfClass:[UIImageView class]])
subview.hidden = YES;
免责声明:视图层次结构将来可能会发生变化,这将导致阴影再次出现。
【讨论】:
scrollView,所以循环可以改为:for (UIView *subview in [webView.scrollview subviews])
看看这个对我有用..
UIScrollView *scrollview = [webView.subviews objectAtIndex:0];scrollview.bounces=NO;
【讨论】:
for (UIView *view in self.webView.scrollView.subviews) {
if ([view isKindOfClass:[UIImageView class]]) {
view.hidden = YES;
}
}
为什么苹果会拒绝这种方法,没有无证和私人部分:) 你找到任何视图,检查他们的班级,然后隐藏...... 您不是删除或重写方法.. 你没有修改(重写)对象的任何部分......只是隐藏,不是吗?
【讨论】:
这是不可能的!在网络上有一些使用私有苹果方法(未记录的 api 和函数)的解决方案。因此,Apple 可以拒绝您的应用。
【讨论】:
将 uiwebview 放在 uiscrollview 上并禁用 uiwebview 滚动。
【讨论】:
你可以这样做。
webView.backgroundColor = [UIColor clearColor]; 在后台输出一个漂亮的 UIImageView。
这很简单。
【讨论】:
for (id subview in _webView.subviews)
if ([[subview class] isSubclassOfClass: [UIScrollView class]]) {
for (UIView *scrollSubview in [subview subviews])
if ([[scrollSubview class] isSubclassOfClass:[UIImageView class]])
scrollSubview.hidden = YES;
}
此解决方案不会被拒绝。
【讨论】:
对于在这种不需要滚动的情况下的任何人,因为您的所有内容都适合,调用 UIWebView 上的 sizeToFit 方法将消除这些阴影。
【讨论】: