I ran into the same problem and searched for a fix in the last 2 days, after which I myself found a fix and you won’t believe how insignificant it was.
In my case, the view controller (say, “DetailsTableViewController” according to this question), where I represented the MFMailComposeViewController , is already presented from some other view controller (for example, “BaseViewController”).
The problem lay in the ' modalPresentationStyle ' of the DetailsTableViewController, presenting it from the BaseViewController.
At that moment, when I changed it from " UIModalPresentationFormSheet " to " UIModalPresentationPageSheet " (for that matter, other than " UIModalPresentationFormSheet "), the problem was resolved and the delegation methods of the mail controller started to shoot as usual.
Note. I already called the method below in the DetailsTableViewController (for this example), so it didn't matter to me what “ modalPresentationStyle ” I used.
- (void)viewWillLayoutSubviews{ [super viewWillLayoutSubviews]; self.view.superview.bounds = CGRectMake(0, 0, 1024, 768); self.view.superview.backgroundColor = [UIColor clearColor]; }
Rajesh Sep 29 '16 at 6:31 2016-09-29 06:31
source share