新手问题。我正在构建一个应用程序,我想调用一个我在ViewController中声明的方法 - 来自AppDelegate(在applicationDidBecomeActive上)。
所以基本上,在TestAppDelegate.m我有......
- (void)applicationDidBecomeActive:(UIApplication *)application { // I want to call a method called "dothisthing" that I've defined in FirstViewController.m // This does not work: [FirstViewController dothisthing] }
在FirstViewController.m我有......
- (void) dothisthing { NSLog(@"dothisthing"); }
这是我的第一个iPhone应用程序,所以任何帮助都会受到赞赏。
答案 0 :(得分:3)
该方法是一个实例方法,因此您需要先创建实例,然后在实例上调用该方法...或者在void
之前将方法声明为静态(+)而不是( - )FirstViewController* controller = [FirstViewController alloc];
[controller dothisthing];
[controller release];
答案 1 :(得分:0)
您还可以在FirstViewController中创建通知,以便在应用程序变为活动状态时调用该方法。
有一个类似的问题,我已经发布了该选项的代码片段
How to refresh UITableView after app comes becomes active again?
答案 2 :(得分:0)
使用这个简单的NSNotificationCenter
example。有魅力!