@ из сообщения: после процесса в третьем контроллере он снова запускает второй контроллер для вызова метода во втором контроллере.
Это показывает, что вы запускаете новый экземпляр secondViewController, в котором отсутствует modalViewController. Вы должны вызвать dismissModalViewControllerAnimated для экземпляра, в котором вы фактически представили его.
Как показано ниже
Создайте свой третий ViewController следующим образом
@class SecondView;
@interface ThirdView : UIViewController {
SecondView *secondViewRefPointer;
}
@property (nonatomic, retain) SecondView * secondViewRefPointer;
@end
и
//While adding the third view from the secondView
ThirdView *thirdViewInstance = [[ThirdView alloc]init];
thirdViewInstance.secondViewRefPointer = self; //self will refer to the current secondView instance
...
И в третьем представлении вызовите dismissModalViewController, как показано ниже
[secondViewRefPointer dismissModalViewControllerAnimated:YES];