我在一个通用项目中获得了带有iOS 6的错误iOS,如果我在splitViewController上加载一个带有UIPickerViewController的窗口,并且只在纵向(而不是在风景中)加载一个带有UIPickerViewController的窗口,那么它只适用于新的iPad模拟器(而不是旧的模拟器或iPhone)。
当我旋转iPad时,就会得到错误。
我不认为有可能产生错误的图像。为什么?
用于加载选择器的代码:
- (void) pickerViewControllerDidFinish:(PickerViewController *)controller {
if (UI_USER_INTERFACE_IDIOM()== UIUserInterfaceIdiomPad) {
self.path = controller.path;
[self dismissViewControllerAnimated:YES completion:nil];
FeedRootViewController *controllerF = [[FeedRootViewController alloc] initWithNibName:@"FeedRootViewController" bundle:nil];
controllerF.path = self.path;
controllerF.detailViewController = self.detailViewController;
[self.navigationController pushViewController: controllerF animated:YES];
[controllerF release];
NSString *urlAddress = [[NSBundle mainBundle] pathForResource:@"feeds" ofType:@"html"];
NSURL *url = [NSURL fileURLWithPath:urlAddress];
NSURLRequest *requestObj = [NSURLRequest requestWithURL:url];
[detailViewController.webView loadRequest:requestObj];
[detailViewController.webView setScalesPageToFit:YES];
[path release];
}
}不过,我不知道问题是不是来自这个代码.
发布于 2014-05-15 10:26:40
代码的最后一行[path release];看起来很可疑。如果path是局部变量,则确保它不会在dealloc方法中释放。如果它释放了FeedRootViewController的path属性,那么您将得到一个错误。此外,不要将属性与局部变量混合,这样会导致错误并使代码不可读。
https://stackoverflow.com/questions/12800549
复制相似问题