我在启用了arc的项目中添加了uiviewcontroller子类,我添加了一个按钮,为它创建了ibaction,里面没有代码,所有这些都是通过界面构建器完成的,没有手动代码,但是当我点击按钮时,我得到了exc_bad_acess。当按下按钮时仪表说它是僵尸攻击。我真的不明白什么是错的。我创建了新项目并完成了它完美运行的相同事情。当我定义解除键盘的方法(辞职第一响应者)时发生同样的事情。
这是我在crtl +从按钮拖动到界面实现时生成的,我选择了ibaction和name并生成了这段代码。
- (IBAction)pushh:(id)sender;
和.m文件中的实现
- (IBAction)pushh:(id)sender {
}
那就是......
答案 0 :(得分:1)
只是结束离线对话,有几点想法:
你的僵尸无疑是ecnObj超出范围的结果。如果它是视图控制器的ivar,则该过早释放问题就会消失。
您不想要创建新的视图控制器,然后在transitionFromView
中使用其视图。如果要在视图控制器之间进行转换(在iOS5中),则应使用pushViewController
或presentViewController
(或者如果您使用容器视图控制器,则可以使用transitionFromViewController
)。请参阅“View Controller编程指南”对" Presenting View Controllers from Other View Controllers"的讨论。
答案 1 :(得分:0)
我的解决方案是删除ib中的按钮iboutlet
,同时删除ib中的ibaction
,然后将其连接回来。