我有两个类,一个是addAlarm,第二个是Name ,,,
现在我在addAlarm(addAlarm是UITableViewController的子类),因为它选择了行,然后它转到Name类,如下所示
Name *ob = [[Name alloc] initWithStyle:UITableViewStyleGrouped];
[self.navigationController pushViewController:ob animated:YES];
[ob release];
ob = nil;
默认情况下有UINavigationBar和addAlarm作为后退按钮,而Name也是UITableViewController的子类
我观察到当我在Name中单击addAlarm backbutton时,它会返回到addAlarm,并且它的viewWillAppear方法调用,但之后调用
- (void)viewDidUnload
和
- (void)dealloc
名称等级的。
我无法理解为什么在执行addAlarm的ViewWillApear之后调用Name的方法,任何想法?
答案 0 :(得分:1)
而不是在dealloc方法中传递数据您可以使用以下方法传递数据。
-(void)viewWillDisappear:(BOOL)animated{
}
另一种方法是将其存储在appDelegate文件中,如下所示。
在appDelegate.h文件中
NSString *strName;
@property(nonatomic,retain)NSString * strName;
在appDelegate.m文件中
@synthesize strName;
现在,您可以在NameController中创建Application的对象,如下所示
AppDelegate *appDelegate = [[UIApplication sharedApplication] delegate];
并存储这样的价值
appDelegate.strName = @"Value to be passed to addAlarm View"
希望得到这个帮助。