2011-05-02 2 views
3

내 문제는 UIWebView의 확대/축소 배율을 감지하고 싶지만 적절한 검색을 시도하지 않았지만 적절한 답변을 제공하지 않았다는 것입니다. 아무 도움도받지 못했습니다 ......UIWebView에서 Zoomscale 감지

답변

0

그래도 UIWebView에는 zoomScale 속성이 없지만 UIScrollView입니다! 그래서 우리는 단지 을 scrollView에 대해 검사하고 그런 식으로 얻습니다.

다음은 [webView zoomScale]으로 전화하여 규모를 확인할 수있는 작은 (1 가지 방법) 카테고리입니다.

있는 UIWebView + zoom.h 항상

@implementation UIWebView (zoom) 

-(float)zoomScale{ 
    UIScrollView *webViewContentView; 
    for (UIView *checkView in [self subviews]) { 
     if ([checkView isKindOfClass:[UIScrollView class]]) { 
      webViewContentView = (UIScrollView*)checkView; 
      break; 
     } 
    } 
    return webViewContentView.zoomScale; 
} 

@end 

UIScrollView Class Reference

UIWebView's View Hierarchy는 (비록에 의존하지 마십시오 파일

@interface UIWebView (zoom) 
-(float)zoomScale; 
@end 

있는 UIWebView + zoom.m 파일 apple ma 일 때 코드가 깨지지 않도록 webView을 검사하십시오. ks가 iOS으로 변경됨)

참고 :이 코드는 작동하지만 회신 상자에는 작성되었으므로 테스트되지 않았습니다.

+1

문제는 사용자가 실제로 확대 또는 축소하는 경우를 제외하고는 항상 1.0을 반환한다는 것입니다. 따라서 사용자가 처음 줌을 시작했을 때 존재했던 현재 줌 배율과 줌 배율의 비율을 실제로 제공하는 값입니다. – MusiGenesis