title: iPhone - MFMailComposeViewController delegate incompatible type
body: <p>I have a view controller which opens an MFMailComposeViewController modally. When I try to set the mail view controller's delegate to the parent view controller, I get this warning:</p>
  
  <pre><code>Assigning to 'id&lt;UINavigationControllerDelegate&gt;' from incompatible
  type 'MoreViewController *__strong'
  </code></pre>
  
  <p>The parent view controller definitely has MFMailComposeViewControllerDelegate in its interface declaration and is implementing the delegate method <code>-mailComposeController: didFinishWithResult:error:</code> as follows:</p>
  
  <pre><code>- (void)mailComposeController:(MFMailComposeViewController *)controller didFinishWithResult:(MFMailComposeResult)result error:(NSError *)error
  {
      NSLog(@"Delegate called");
  }
  </code></pre>
  
  <p>I really don't understand why the parent view controller is being recognized as a UINavigationControllerDelegate, as I don't implement those methods nor do I declare it as such. I wouldn't be so worried about it but the delegate method never gets called, so I'm guessing this "mismatch" is part of the problem.</p>
  
  <p>If it helps, this is how I am initting the mail view controller, in <code>viewDidLoad</code>:</p>
  
  <pre><code>// MAIL
  self.mail = [[MFMailComposeViewController alloc] init];
  self.mail.delegate = self;
  </code></pre>
  
  <p>Thanks in advance for any thoughts you may have.</p>