Push and Pop behaviour is strange, why?

自作多情 提交于 2019-12-02 15:50:03

问题


I have two classes, the one is addAlarm and second is Name,,,

for now I am in addAlarm (addAlarm is subclass of UITableViewController), as it selects the row, then it goes to Name class as below

        Name *ob = [[Name alloc] initWithStyle:UITableViewStyleGrouped];
        [self.navigationController pushViewController:ob animated:YES];

        [ob release];
        ob = nil;

then there is UINavigationBar with addAlarm as back button by default, while Name is also subclass of UITableViewController

I observe that when I click addAlarm backbutton in Name, then it goes back to addAlarm, and its viewWillAppear Method calls, but after that it calls

         - (void)viewDidUnload

and

         - (void)dealloc

of Name Class.

I am unable to understand that why it is calling the methods of Name after it executes ViewWillApear of addAlarm, any Idea?


回答1:


Instead of passing data in dealloc method You can Pass data in below method.

-(void)viewWillDisappear:(BOOL)animated{

}

Another Method is to store it in appDelegate file like below.

In appDelegate.h file

NSString *strName;

@property (nonatomic, retain) NSString *strName;

In appDelegate.m file

@synthesize strName;

Now, you can create object of Application in your NameController like below

AppDelegate *appDelegate = [[UIApplication sharedApplication] delegate]; 

And store value like this

appDelegate.strName = @"Value to be passed to addAlarm View"

Hope this help.



来源:https://stackoverflow.com/questions/6717269/push-and-pop-behaviour-is-strange-why

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!