0

我正在显示webView, 只有在触摸它并向下滚动页面后scroll bar才会出现。

如何在开始时自动显示webView设置,scroll bar以便显示它,并且是否可以在代码中objective c而不是在HTML代码中控制他的颜色?

4

1 回答 1

0

为了显示指标,您可以使用以下技巧:

  1. 实施webViewDidFinishLoad和使用此方法flashScrollIndicators

    -(void)webViewDidFinishLoad:(UIWebView *)webView {
        [webView.scrollView flashScrollIndicators];
    }
    
  2. 使用此类别显示指标:

    #define noDisableVerticalScrollTag 836913
    
    @implementation UIImageView (ForScrollView)
    
    - (void) setAlpha:(float)alpha {
    
    if (self.superview.tag == noDisableVerticalScrollTag) {
        if (alpha == 0 && self.autoresizingMask == UIViewAutoresizingFlexibleLeftMargin) {
            if (self.frame.size.width < 10 && self.frame.size.height > self.frame.size.width) {
                UIScrollView *sc = (UIScrollView*)self.superview;
                if (sc.frame.size.height < sc.contentSize.height) {
                    return;
                }
            }
        }
    
        if (alpha == 0 && self.autoresizingMask == UIViewAutoresizingFlexibleTopMargin) {
            if (self.frame.size.height < 10 && self.frame.size.height < self.frame.size.width) {
                UIScrollView *sc = (UIScrollView*)self.superview;
                if (sc.frame.size.width < sc.contentSize.width) {
                    return;
                }
            }
        }
    }
    
    [super setAlpha:alpha];
    }
    @end
    
  3. 然后,给你UIWebView的标签是这样的:

    [webViews.scrollView setTag:noDisableVerticalScrollTag];
    

就是这样,页面加载完成后,指示器将保留在屏幕中。

对于颜色问题,您的意思是更改指示器颜色吗?

于 2012-10-14T08:57:25.653 回答