【发布时间】:2011-09-18 19:12:22
【问题描述】:
我正在尝试将 NSArray 从 appDelegate 传递给 viewController,但似乎数据没有被保留。例如。 'courseArray' 包含 appDelegate 中的值,但在 viewController 中它是空的。我做错了什么?
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
CourseSelectController *courseTimeTableView = [[CourseSelectController alloc] initWithNibName:nil bundle:nil];
courseTimeTableView.courseArray = self.courseArray;
[courseTimeTableView release];
self.window = [[[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]] autorelease];
// Override point for customization after application launch.
self.viewController = [[[WestminsterViewController alloc] init] autorelease];
if([self.window respondsToSelector:@selector(setRootViewController:)])
{
[self.window performSelector:@selector(setRootViewController:) withObject:self.viewController];
}
else
{
[self.window addSubview:[self.viewController view]];
[self.viewController.view setFrame:[self.window bounds]];
}
[self.window makeKeyAndVisible];
return YES;
}
【问题讨论】:
-
你为什么在分配后立即在
courseTimeTableView上调用release?你还没有retained 它,或者给另一个对象retain它的机会。这会导致问题。
标签: objective-c ios xcode ios4 delegates