由于我发现的所有问题都是关于禁用垂直滚动,我认为我做错了所以我的UIWebView
不会滚动。但我无法弄清楚为什么。以下是我的代码的一些部分:
在我的AppDelegate中:
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
self.window.rootViewController = self.viewController;
[window addSubview:viewController.webView];
[self.window makeKeyAndVisible];
return YES;
}
在我的ViewController中:
- (void)viewDidLoad {
[super viewDidLoad];
[webView setDelegate:self];
NSString *urlString = /* some url string */;
NSURL *url = [NSURL URLWithString:urlString];
NSURLRequest *request = [NSURLRequest requestWithURL:url cachePolicy:nil timeoutInterval:10];
[webView loadRequest:request];
}
我不知道是否值得一提,但放大和缩小也是禁用的。如果我尝试滚动它会滚动整个窗口而不是UIWebView
。那么我做错了什么?
答案 0 :(得分:1)
可以解决您问题的一些观察结果:
此代码:
self.window.rootViewController = self.viewController;
[window addSubview:viewController.webView];
[self.window makeKeyAndVisible];
有点怀疑。假设您的viewController
webView
已初始化并通过Interface Builder添加到viewController
的{{1}},则应该没有理由直接将view
添加为webView
窗口的子视图。 webView
(大概)是viewController
的{{1}}的子视图,因此当您view
viewController
的{{1}} window
时会显示rootViewController
1}}。同样,在引入rootViewController
属性之前的旧版iOS中,这可能看起来像这样:
[window addSubview:viewController.view];
[window makeKeyAndVisible];
或者在较新的iOS版本中:
window.rootViewController = self.viewController;
[window makeKeyAndVisible];
其次,关于缩放问题,您可能将UIWebView
属性scalesPageToFit
设置为NO
(默认设置。)如果您希望允许缩放,请确保将此属性设置为{ {1}}。
我希望这有帮助,
萨姆