可以使用JavaScript来设置a的像素y偏移量UIWebView,例如:
[webView stringByEvaluatingJavaScriptFromString:[NSString stringWithFormat:@"scrollTo(0, %d)", offset]];
Run Code Online (Sandbox Code Playgroud)
有没有办法得到:
这些信息UIWebView是否可以通过其他方式获得?
我想如果我有页数(通过CGPDFDocumentGetNumberOfPages),页面之间的像素高度差距,或单个页面的像素高度,我可以计算offset使用JavaScript调用.然后我只是连接一个UIButton或UISlider在页面之间移动.
编辑我
我有一个解决方案,但它使用UIWebDocumentView了一个私人子视图UIWebView.
我创建了一个名为的视图控制器PDFViewerViewController,它是一个子类WebViewerViewController,它本身就是一个视图控制器,它包含a UIToolbar,a UIWebView,并且符合UIWebViewDelegate协议.
在调用PDFViewerViewControllerWeb视图委托方法之后,我会计算有关封闭Web视图和PDF数据的一些信息-webViewDidFinishLoad:.
此信息用于计算通过JavaScript提供给Web视图的大致每页偏移量.
PDFViewerViewController.h
#import <UIKit/UIKit.h>
#import "WebViewerViewController.h"
@interface UIWebDocumentView : NSObject {}
@end
@interface PDFViewerViewController : WebViewerViewController {
NSUInteger offset;
NSUInteger currentPage;
NSUInteger documentPages;
CGFloat documentHeight;
CGFloat pageHeight;
}
@property (assign) NSUInteger offset;
@property (assign) NSUInteger …Run Code Online (Sandbox Code Playgroud)