Iphone [self.navigationController popViewControllerAnimated:YES];之后调用什么方法;?

Iphone [self.navigationController popViewControllerAnimated:YES];之后调用什么方法;?,iphone,methods,viewwillappear,Iphone,Methods,Viewwillappear,我有以下代码: -(IBAction)OkButtonPressed:(id)sender{ NSLog(@"BTN OK"); RecherchePartenaireTableView *recherchePartenaireTableView=[[RecherchePartenaireTableView alloc]init]; recherchePartenaireTableView.mytext=textFieldCode.text; [self.nav

我有以下代码:

-(IBAction)OkButtonPressed:(id)sender{
    NSLog(@"BTN OK");
    RecherchePartenaireTableView *recherchePartenaireTableView=[[RecherchePartenaireTableView alloc]init];
    recherchePartenaireTableView.mytext=textFieldCode.text;

    [self.navigationController popViewControllerAnimated:YES];
}

在我按下ok之后,我在控制台中看到消息“BTN ok”,其他什么都没有。在类RecherchePartenaireTableView中,我有viewwillbeen、viewDidload。。。以及每个方法的NSLog消息。[
self.navigationController popViewControllerAnimated:YES]之后调用什么方法

如果您有一个控制器a,并且您正在将控制器B推到a的顶部。
- (void) viewWillAppear: (BOOL)animated method will be called first
因此,在控制器B中调用popViewControllerAnimated

视图将出现:将调用控制器A的动画

在您的情况下,B是RecherCheParteAireTableView,因此在执行popViewController时,B将被调用,因此不可能出现视图


如果要在RecherCheParteAireTableView消失时执行某项操作,请在RecherCheParteAireTableView的视图中执行该操作将消失

如果试图设置导航堆栈上已存在的类<代码>RecherCheParteAireTableView
的属性,则创建该属性的新实例是错误的

您应该从navigationController堆栈中获取实例

改变

RecherchePartenaireTableView *recherchePartenaireTableView=[[RecherchePartenaireTableView alloc]init];
recherchePartenaireTableView.mytext=textFieldCode.text;


viewdideappease
方法将在您从中推送视图的类上调用

那么为什么我没有从NSLog获得消息呢?如果这不起作用,你可以使用名为-(void)navigationController:(UINavigationController*)navigationController将显示viewController:(UIViewController*)viewController动画:(BOOL)动画;我想在再次调用RecherchePartenaireTableView后将文本设置为标签。您应该使用模型,因为您正在保存状态。如果不想这样做,可以在AppDelegate中创建状态变量,[(AppDelegate*)[UIApplication sharedApplication].delegate stateVar]=someValue,并在ViewWillDisplay中使用此值设置文本我找到了此解决方案[navigationController ViewWillDisplay:YES];在ViewDidLoad上,为什么textFiledCode.text为空?我如何从文本字段中获取文本?…现在我遇到了一个问题:在视图上,我的文本将显示为空,我不知道为什么:|你到底想做什么?设置类<代码>RecherCheParteAireTableView的属性(myText),该属性来自于按下按钮的类(类)。在RecherCheParteAireTableView中,我有属性@property(非原子,保留)NSString*myText;在RecherchePartenaireTypePartenaireViewController中,我有这样一个:-(iAction)Ok按钮按下:(id)发送方{NSLog(@“BTN Ok”);RecherchePartenaireTableView*RecherchePartenaireTableView=[[RecherchePartenaireTableView alloc]init];RecherchePartenaireTableView.mytext=cellText;NSLog(@“jjjjjjj%”,RecherchePartenaireTableView.mytext);[self.recherchePartenaireTableView.tableviewrecherchepartenaire重载数据];[self.navigationController popViewControllerAnimated:YES];}问题是在视图上显示myText为空。为什么?
NSArray *viewControllers = [self.navigationController viewControllers];
RecherchePartenaireTableView *recherchePartenaireTableViewVC = (RecherchePartenaireTableView *)[viewControllers objectAtIndex:viewControllers.count - 2];
recherchePartenaireTableViewVC.mytext=textFieldCode.text;