码迷,mamicode.com
首页 > Web开发 > 详细

怎么实现发短信,注意要包含短信内容哦,不是openURL那个

时间:2015-07-16 18:40:15      阅读:251      评论:0      收藏:0      [点我收藏+]

标签:

源代码在这:

加载MFMessageComposeViewController

- (void)showMessageView

{

    if( [MFMessageComposeViewController canSendText] )

    {

        MFMessageComposeViewController * controller = [[MFMessageComposeViewController alloc] init];//autorelease];

        controller.recipients = [NSArray arrayWithObject:@"15988888888"];

        controller.body = @"请直接将此条认证短信发送给我们,以完成手机安全绑定。(9qzkd27953ma)";

        controller.messageComposeDelegate = self;

        

        [self presentModalViewController:controller animated:YES];

//        [[[[controller viewControllers] lastObject] navigationItem] setTitle:@"SomethingElse"];//修改短信界面标题

        [controller release];

    }

    else

    {

        UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"提示信息" 

                                                        message:@"该设备不支持短信功能" 

                                                       delegate:self 

                                              cancelButtonTitle:nil

                                              otherButtonTitles:@"确定", nil];

        [alert show];

        [alert release];

    }

}

 

 

MFMessageComposeViewControllerDelegate

- (void)messageComposeViewController:(MFMessageComposeViewController *)controller didFinishWithResult:(MessageComposeResult)result

{

[controller dismissModalViewControllerAnimated:NO];//关键的一句   不能为YES

switch ( result ) {

case MessageComposeResultCancelled:

        {

//click cancel button

          }

break;

case MessageComposeResultFailed:// send failed

            

break;

case MessageComposeResultSent:

            {

                

//do something

            }

break;

default:

break;

}

 

}

我们知道可以使用这样的代码在iphone中发送短信:

[[UIApplication sharedApplication] openURL:@"sms:12345678"]; 

但这样的方式无法指定短信内容。那么我们可以使用MessageUI框架。

 

首先在程序中导入MessageUI.framework。import头文件:#import "DeviceDetection.h"

 

然后在代码中使用下面的语句来调用短信发送窗口,并指定号码和短信内容:

 

MFMessageComposeViewController *controller = [[[MFMessageComposeViewController alloc] init]autorelease];

controller.body = @"zc";

controller.recipients = [NSArray arrayWithObjects:@"106295598", nil];

controller.messageComposeDelegate = self;

[self presentModalViewController:controller animated:YES];

 

同时实现协议MFMessageComposeViewControllerDelegate,

在协议方法messageComposeViewController:didFinishWithResult:

中解散窗口:

switch (result) {

case MessageComposeResultCancelled:

NSLog(@"Cancelled");

break;

case MessageComposeResultFailed:

[self alert:@"发送短信错误!"];

break;

case MessageComposeResultSent:

break;

default:

break;

}

[self dismissModalViewControllerAnimated:YES];

怎么实现发短信,注意要包含短信内容哦,不是openURL那个

标签:

原文地址:http://www.cnblogs.com/yintingting/p/4651859.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!