打电话、发邮件、发短信功能

打电话功能:

第一种是用UIWebView加载电话,这种会返回到应用程序中,是应用程序中最常用的

代码如下:

UIWebView*call =[[UIWebView alloc] init];  

NSURL *telURL =[NSURL URLWithString:@"电话号"];  

[call loadRequest:[NSURLRequest requestWithURL:telURL]]; 

[self.view addSubview:call];



第二种是私有方法 ,

[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"电话号"]]; 



发邮件实现步骤:

第一步:加入头文件

#import <MessageUI/MessageUI.h>

第二步:遵守协议

<MFMailComposeViewControllerDelegate>

第三步 :实现发送邮件按钮的方法和代理方法

#pragma mark ----发送邮件


//邮件发送方法:

-(void)displayComposerSheet

{

    MFMailComposeViewController *picker = [[MFMailComposeViewControlleralloc] init];

    picker.mailComposeDelegate =self;

    //设置主题

    [picker setSubject:@"用户反馈"];

    

    //设置收件人

    NSArray *receive = [NSArrayarrayWithObjects:@"850944523@qq.com",

                             nil];

    

    NSArray *ccRecipients = [NSArrayarrayWithObjects:@"1342236145@qq.com",nil];

    NSArray *bccRecipients = [NSArrayarrayWithObjects:@"1342236145@qq.com",

                              nil];

    

    [picker setToRecipients:receive];

    [picker setCcRecipients:ccRecipients];

    [picker setBccRecipients:bccRecipients];

    


   // 设置邮件发送内容

    NSString *emailBody =@"请反馈你宝贵的意见,让我们继续改进";

    [picker setMessageBody:emailBodyisHTML:NO];

    

   //邮件发送的模态窗口

    [selfpresentViewController:picker animated:YEScompletion:nil];

}


//邮件发送完成调用的方法:

-(void)mailComposeController:(MFMailComposeViewController *)controller didFinishWithResult:(MFMailComposeResult)result error:(NSError *)error

{

    switch (result)

    {

        caseMFMailComposeResultCancelled: //取消

            NSLog(@"MFMailComposeResultCancelled-取消");

            break;

        caseMFMailComposeResultSaved: //保存

            NSLog(@"MFMailComposeResultSaved-保存邮件");

            break;

        caseMFMailComposeResultSent: //发送

            NSLog(@"MFMailComposeResultSent-发送邮件");

            break;

        caseMFMailComposeResultFailed: //尝试保存或发送邮件失败

            NSLog(@"MFMailComposeResultFailed: %@...",[errorlocalizedDescription]);

            break;

    }

    

   // 关闭邮件发送视图

    [selfdismissViewControllerAnimated:YEScompletion:nil];

}



发短信功能

Frameworks中要引入MessageUI.framework 

#import <MessageUI/MessageUI.h>
添加协议:
<MFMessageComposeViewControllerDelegate>



调用MFMessageComposeViewController,同时实现协议MFMessageComposeViewControllerDelegate。

[cpp]  view plain  copy
 print ?
  1. - (void)showMessageView  
  2. {  
  3.       
  4.     if( [MFMessageComposeViewController canSendText] ){  
  5.           
  6.         MFMessageComposeViewController * controller = [[MFMessageComposeViewController alloc]init]; //autorelease];  
  7.           
  8.         controller.recipients = [NSArray arrayWithObject:@"10010"];       
  9.         controller.body = @"测试发短信";          
  10.         controller.messageComposeDelegate = self; 
  11.         [self presentModalViewController:controller animated:YES];  
  12.           
  13.         [[[[controller viewControllers] lastObject] navigationItem] setTitle:@"测试短信"];//修改短信界面标题  
  14.     }else{  
  15.           
  16.         [self alertWithTitle:@"提示信息" msg:@"设备没有短信功能"];          
  17.     }      
  18. }  
  19.   
  20.   
  21. //MFMessageComposeViewControllerDelegate  
  22.   
  23. - (void)messageComposeViewController:(MFMessageComposeViewController *)controller didFinishWithResult:(MessageComposeResult)result{  
  24.       
  25.     [controller dismissModalViewControllerAnimated:NO];//关键的一句   不能为YES  
  26.       
  27.     switch ( result ) {  
  28.               
  29.         case MessageComposeResultCancelled:  
  30.   
  31.             [self alertWithTitle:@"提示信息" msg:@"发送取消"];   
  32.             break;  
  33.         case MessageComposeResultFailed:// send failed  
  34.             [self alertWithTitle:@"提示信息" msg:@"发送成功"];   
  35.             break;  
  36.         case MessageComposeResultSent:  
  37.             [self alertWithTitle:@"提示信息" msg:@"发送失败"];   
  38.             break;  
  39.         default:  
  40.             break;   
  41.     }  
  42. }  
  43.   
  44.   
  45. - (void) alertWithTitle:(NSString *)title msg:(NSString *)msg {  
  46.   
  47.       
  48.     UIAlertView *alert = [[UIAlertView alloc] initWithTitle:title  
  49.            message:msg  
  50.            delegate:self  
  51.            cancelButtonTitle:nil  
  52.            otherButtonTitles:@"确定", nil];  
  53.                            
  54.    [alert show];  
  55.                    
  56. }              




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值