“Tell Friend” example which allow selection multiple contact

前端 未结 1 713
-上瘾入骨i
-上瘾入骨i 2021-01-28 16:26

I would like to add to my application a \"Tell Friend\" option which allow user to select multiple contacts to send them email. Contact need to be filtered to the one who have e

相关标签:
1条回答
  • 2021-01-28 17:23

    I recently searching for the same problem and I found iTellAfriend. It works for me.

    Download this source code from github/iTellafriend. Open zip file and inside src file drag iTellAFriend.h and iTellAFriend.m to your project. Check "Copy items into destination group folder(if needed)" and "Create group folder for any added folders"

    In your appdelegate.m add #import "iTellAFriend.h"

    Add following to your appdelegate.m

    - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
    {
          //[iTellAFriend sharedInstance].appStoreID = yourAppId;
            [iTellAFriend sharedInstance].appStoreID = 408981381; //example
    
            return YES;
    }
    

    Add #import "iTellAFriend.h" to your ViewController.m and anywhere in your ViewController.m call following method (preferably in a button)

    if ([[iTellAFriend sharedInstance] canTellAFriend]) {
                UINavigationController* tellAFriendController = [[iTellAFriend sharedInstance] tellAFriendController];
                [self presentModalViewController:tellAFriendController animated:YES];
            }
    

    In iTellAFriend.m modify following

    - (UINavigationController *)tellAFriendController
    {
      MFMailComposeViewController *picker = [[MFMailComposeViewController alloc] init];
      picker.mailComposeDelegate = self;
    
    
      [picker setSubject:self.messageTitle];
      [picker setMessageBody:[self messageBody] isHTML:YES];
    
      return picker;
    }
    

    to

    - (UINavigationController *)tellAFriendController
    {
      MFMailComposeViewController *picker = [[MFMailComposeViewController alloc] init];
      picker.mailComposeDelegate = self;
    
        NSArray *toRecipients = [NSArray arrayWithObjects:@"xxxx@xxxx.com", @"xxxxx@xxxx.com", nil];
        [picker setToRecipients:toRecipients];
    
      [picker setSubject:self.messageTitle];
      [picker setMessageBody:[self messageBody] isHTML:YES];
    
      return picker;
    }
    

    when you click your button following scene will appear it wont send the email on simulator but on device enter image description here

    0 讨论(0)
提交回复
热议问题