UIButton点击获取[SecondPage performSelector:withObject:withObject:]:消息发送到解除分配的实例

时间:2012-01-04 07:37:03

标签: xcode

使用Xcode 5并启用自动引用计数。

在基于Non NavigationController的应用程序中,我采用了UIButton,并正确定义和连接了IBAction和IBOutlet。但是在通过Button录制的用于TouchUpInside事件的IBAction之前,应用程序将“[SecondPage performSelector:withObject:withObject:]:message”发送到解除分配的实例0x6cb7970“。 SecondPage是存在此UIButton的视图控制器。

基本上我想在这个UIButton上打开一个新的视图控制器的视图,我将通过Custom Segue执行此操作

3 个答案:

答案 0 :(得分:27)

奇怪的是,听起来ARC在调用选择器之前会自动释放你的第二个控制器。

尝试将第二个视图定义为第一个属性(如果您将其添加为子视图),其属性类型为strong。

如果没有看到您的代码,我就可以推荐这一切。

答案 1 :(得分:1)

我遇到了同样的问题,并用Matt Rees的建议解决了。

只需在firstViewController.h中声明你的secondViewController并在那里创建它的实例。喜欢,     secondViewController * secondView;

答案 2 :(得分:0)

我遇到了同样的问题并解决了抛出的错误。

有了更多细节,我在logout / login上重新分配了调用者对象(本例中为SecondPage),但是重新使用了一些其他的viewcontrollers,所以重新使用的viewcontroller有我重新分配的调用者对象的前一个实例。

好了,现在就解决了!