8

Has anyone faced an issue where the MFMailcomposeviewcontroller send button is disabled/grayed out? The cancel button works perfectly fine.

It seems like a new bug?

NSNoob
  • 5,548
  • 6
  • 41
  • 54
PictureMeAndYou
  • 533
  • 2
  • 5
  • 16
  • Are you trying to do this in the Simulator? Testing mail needs to be done on a device. – Michael Nov 11 '16 at 04:22
  • I've done it on a device. But it works on my iPhone 6 and not on my iPhone 7 – PictureMeAndYou Nov 11 '16 at 04:23
  • 2
    That's because your device is not configured to send emails. First set up an email account on your device and then try again – NSNoob Nov 11 '16 at 04:24
  • @Michael Nopes on Simulator, `canSendEmail` returns false so you can never even get the dialogue of email composer to open on simulator without running into a crash. The fact that he can present the dialogue tells us that he is running it on a device, albeit on a device which doesn't have an email account enabled – NSNoob Nov 11 '16 at 04:24
  • 1
    Perhaps the "to" or "from" field is empty. Can't send an email until both are filled in. – rmaddy Nov 11 '16 at 05:02

3 Answers3

32

This could happen in case native Mail application is removed from iPhone (allowed starting from iOS 10). In this case system Setting missing "Mail" setting item and system probably cannot get configuration of default email account.

At the same moment MFMailComposeViewController.canSendMail() return true, so I did not find any solution to solve this case.

Andriy Slyusar
  • 526
  • 3
  • 6
1

Getting same issue and spent few hours to find out the solution and working fine now.

1)check default "Mail" app of your ios device is uninstall
or
2)already exist but offload this app from setting that time showing icon like attached image than just install app again and solve the problem.

enter image description here

Maulik Patel
  • 2,045
  • 17
  • 24
0

Make sure the Mail App is installed in your device.

Basil Mariano
  • 2,437
  • 1
  • 20
  • 13