在开始时添加滚动条,而不是在第一次触摸后添加

时间:2012-10-14 08:26:51

标签: iphone objective-c uiscrollview scrollbar

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

如何在开始时自动显示webView设置scroll bar以显示objective c,并且可以在HTML而不是{{{{1}}中控制其颜色1}}代码?

1 个答案:

答案 0 :(得分: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];
    
  4. 就是这样,在页面加载完毕后,指示符将保留在屏幕上。

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