-1

我有一个使用 XCode 4.6、Storyboards、iOS 6.2 的 iPad 应用程序。我查看了 SO 和 Google,但没有关于何时将消息发送到按钮。
当用户离开“场景”但它不起作用时,我试图将一些数据保存到 CoreData。
这是代码:

-(void) viewWillDisappear:(BOOL)animated  {

     [bSavePreferences sendActionsForControlEvents:UIControlEventTouchUpInside];

}

-bSavePreferences 与 viewWillDisappear 属于同一类,但它永远不会被调用。为什么?

更新:我应该提到我正在使用 UITabBarController 来控制选择哪个页面。

4

2 回答 2

2

一些东西...

  1. 您不应该以这种方式调用操作。您应该直接调用 IBAction 方法来进行保存。

  2. 在实现 viewWillDisappear 时,您需要在某个时候调用 [super viewWillDisappear:animated]。

  3. 至于根本问题,调用 viewWillDisappear 以响应从视图层次结构中删除的视图。此时 UIButton 可能不再能够接收事件。我鼓励您查看文档

于 2013-04-03T20:43:46.417 回答
0

有多种方法:

一种方法是向按钮添加目标操作:

 [myButton addTarget:self 
         action:@selector(myAction) forControlEvents:UIControlEventTouchUpInside];

第二种选择是使用 IBActions:

- (IBAction)ButtonPressed { NSLog@"press"; }

确保正确连接插座!

于 2013-04-03T21:05:06.043 回答