-1

我有两个名为 TEnterCorrectCodeController 和 TEmergencyCancelController 的控制器类。

在这两个类中都有按钮。在两个控制器类的按钮单击上,我正在调用另一个控制器类名称 TSendEmailController。但问题是,当调用 TEnterCodecontroller 的按钮单击时,它会通过 [self presentModalController] 打开 TSendEmailController,并且在单击 TsendEmail 类中存在的按钮时,我希望打开另一个类。

当点击 TEmergencyCancelController 的按钮时,它会通过 [self presentModalController] 打开 TsendEmail,当点击 TsendEmail 的按钮时,它不应该打开其他类,而是应该关闭控制器。问题是如何识别哪个类调用了 TsendEmailController 并且取决于我必须检查条件。问题是我没有使用导航控制器我正在使用 [self presentModalViewController animated:YES] 推送视图。

这是我的代码:

for (int  i=0; i< [self.navigationController viewControllers count]; i++) 
            {
                UIViewController *aController = [[self.navigationController view viewControllers]objectAtIndex:i];
                if ([aController isKindOfClass:[TEnterCorrectCodeController class]])
                {

                    lblAttempt.hidden = YES;
                    [self saveregisteridinplist];
                    TInstructionsController  *instructions = [[TInstructionsController alloc]init];
                    [self presentModalViewController:instructions animated:YES];
                    [instructions release];


                }
                else if ([aController isKindOfClass:[TEmergencyCancelController class]])
                {
                    lblAttempt.hidden = YES;
                    [self saveregisteridinplist];
                    [self dismissModalViewControllerAnimated:YES];


                }
            }

在我编写的代码中,它没有进入 for 循环,因为我没有使用 navigationController。

4

1 回答 1

0

对于确定调用了哪个类的解决方案,TsendEmailNSIntegerAppDelegate. 例如。NSInteger flag=0;...@property and @synthesize它.....现在,当您调用TSendEmailfrom时TEnterCorrectCodeController,设置flag为 1......并且在viewDidLoad of viewWillAppear方法中,设置flag为 0....现在,当您在TEmergencyCancelController课堂上时,检查flag是 0 还是1 ...如果为 0 则驳回您的观点.....

您可以使用这个概念.... :)

于 2012-04-12T08:48:42.367 回答