2011-12-12 109 views
8

我使用Web視圖來顯示小型pdf文件。爲了美觀,我想刪除PDF上的灰色邊框。有沒有辦法解決它?我查看了各種資源,其中似乎沒有任何工作或解決方案不再適用於iOS5。從UIWebView中刪除陰影

另外,如果只有一個頁面,是否有任何停止滾動的方法?

謝謝。

回答

9

陰影實際上是的UIScrollView的UIImageView的子視圖(或在iOS5中UIWebView的等價物)。

所以在iOS4的:

for (UIView* subView in [webView subviews]) 
{ 
    if ([subView isKindOfClass:[UIScrollView class]]) { 
     for (UIView* shadowView in [subView subviews]) 
     { 
      if ([shadowView isKindOfClass:[UIImageView class]]) { 
       [shadowView setHidden:YES]; 
      } 
     } 
    } 
} 

和iOS5的和上面:

for (UIView* shadowView in [webView.scrollView subviews]) 
{ 
    if ([shadowView isKindOfClass:[UIImageView class]]) { 
     [shadowView setHidden:YES]; 
    } 
} 
+0

這不是在這裏工作(xcode5,ios7)... – Colas

+0

@Colas我不認爲網頁視圖有iOS7下的陰影。 –

+0

我正在談論圍繞webview的陰影,就像一個灰色的框架。 – Colas

0

嘗試刪除邊框和陰影:

[[yourView layer] setBorderColor: [[UIColor clearColor] CGColor]]; 
[[yourView layer] setBorderWidth: 0.0f]; 
[[yourView layer] setShadowColor: [[UIColor clearColor] CGColor]]; 
[[yourView layer] setShadowOpacity: 0.0f]; 
[[yourView layer] setShadowOffset: CGSizeMake(0.0f, 0.0f)]; 
3

與iOS 9

- (void)webViewDidFinishLoad:(UIWebView *)webView { 
    for (UIView *object in webView.scrollView.subviews) { 
     if ([NSStringFromClass([object class]) isEqualToString:@"UIWebPDFView"]) { 
      UIView *pdfView = object; 
      for (UIView *pdfObjectSubview in pdfView.subviews) { 
       if ([NSStringFromClass([pdfObjectSubview class]) isEqualToString:@"UIPDFPageView"]) { 
        UIView *uiPDFPageView = pdfObjectSubview; 
        uiPDFPageView.layer.shadowOpacity = 0.0f; 
       } 
      } 
     } 
    } 
} 
+0

也適用於iOS 8。 –

+0

我有這個4頁的pdf。陰影仍然在最後2頁?任何想法爲什麼? – Rhenz

0

這是爲我工作的偉大工程。我使用導航控制器 我希望這將有助於

self.navigationController.navigationBar.translucent = NO; 

另一種方式是存在的,只要到故事情節和選擇控制器在網絡視圖是存在的。並轉到屬性檢查,並取消

調整滾動視圖昆蟲