我有一个应用程序,正在尝试为聊天应用程序实现LibPusher API。

该API已启用arc,并且已将其包含在我的nonarc项目中。
除了一些警告,它工作正常。

现在我的问题是我在导航栏中添加了一个像这样的按钮:

UIButton *btnNext1 =[[UIButton alloc] init];
    [btnNext1 setBackgroundImage:[UIImage imageNamed:@"back_btn.png"] forState:UIControlStateNormal];

    btnNext1.frame = CGRectMake(100, 100,60, 31);
    UIBarButtonItem *btnNext =[[UIBarButtonItem alloc] initWithCustomView:btnNext1];
    [btnNext1 addTarget:self action:@selector(backButtonClicked) forControlEvents:UIControlEventTouchUpInside];
    self.navigationItem.leftBarButtonItem = btnNext;
    [btnNext1 release];

一切正常,我正在这样做:
PusherPresenceEventsViewController *rootView = ( PusherPresenceEventsViewController*)[self.navigationController.viewControllers objectAtIndex:1];
rootView.newmessage =@"";
[self.navigationController popToViewController:rootView animated:YES];
[rootView release];

前两次也可以正常工作。
但是,第三次出现错误的访问错误。
我不明白我哪里出了问题,有人可以帮助我吗?

最佳答案

UIButton *btnNext1 =    [UIButton buttonWithType:UIButtonTypeCustom]

并不要释放它。也要释放Rootview,因为您没有分配它。

09-06 01:12