我在.xib文件中放了一个导航栏和一个Bar Button Item。
我为我的按钮创建了一个动作,我连接了它,动作如下:
- (IBAction)AddAlert:(id)sender {
self.addReminderViewController =[[AddReminderViewController alloc]initWithNibName:@"AddReminderViewController" bundle:nil];
[self.navigationController pushViewController:addReminderViewController animated:YES];
}
其中AddReminderViewController
是我想要导航到的控制器。
我的ViewController.h如下所示:
#import <UIKit/UIKit.h>
@class AddReminderViewController;
@interface ViewController : UIViewController <UITableViewDelegate , UITableViewDataSource>
@property (strong, nonatomic) AddReminderViewController *addReminderViewController;
@property (strong,nonatomic) NSArray *listData;
- (IBAction)AddAlert:(id)sender;
@end
我声明@class AddreminderViewController
以便我可以在那里导航,并在.m文件中合成属性。
然而,当我按下按钮时没有任何反应。它没有崩溃!它在任何地方都没有导航我。我应该对AppDelegate进行任何更改吗?我在这里缺少什么?
答案 0 :(得分:1)
当您使用self.addReminderViewController
初始化控制器但稍后您不使用self时,使用self
确保正确设置了对象保留计数。
在您的代码中
[self.navigationController pushViewController:addReminderViewController animated:YES];
尝试更改上述行并使用addReminderViewController
添加自己,这可能会解决您的问题
[self.navigationController pushViewController:self.addReminderViewController animated:YES];