最新调用短信界面发送短信

本文介绍如何在iOS应用中实现短信发送功能,包括检查设备是否支持短信发送、构建短信内容及接收者列表,并展示了如何使用MFMessageComposeViewController来显示短信编辑界面。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

.h文件中

#import <UIKit/UIKit.h>

#import  <MessageUI/MessageUI.h>


@interface ViewController : UIViewController <MFMessageComposeViewControllerDelegate>


- (IBAction) sendMessagePressed:(id)sender;


@end




- (IBAction)sendMessagePressed:(id)sender {

    Class messageClass = (NSClassFromString(@"MFMessageComposeViewController"));

    if (messageClass != nil) {

        // Check whether the current device is configured for sending SMS messages

        if ([messageClass canSendText]) {

            [self displaySMSComposerSheet];

        }

        else {

            NSLog(@"设备没有短信功能");

        }

    }

    else {

        NSLog(@"iOS版本过低,iOS4.0以上才支持程序内发送短信");

    }

}


-(void)displaySMSComposerSheet

{

    MFMessageComposeViewController *picker = [[MFMessageComposeViewController alloc] init];

    picker.messageComposeDelegate = self;

    

    NSMutableString* absUrl = [[NSMutableString alloc] initWithString:@"http://www.baidu.com"];

    [absUrl replaceOccurrencesOfString:@"http://i.aizheke.com" withString:@"http://m.aizheke.com"

                               options:NSCaseInsensitiveSearch range:NSMakeRange(0, [absUrl length])];

    

    picker.body=[NSString stringWithFormat:@"我在爱折客上看到:%@ 可能对你有用,推荐给你!link%@"

                 ,@"http://www.baidu.com", @"http://www.baidu.com"];

    picker.recipients = [NSArray arrayWithObjects:@"18079177441", nil];

    

    //[self presentModalViewController:picker animated:YES];

    [self presentViewController:picker animated:YES completion:nil];

}


- (void)messageComposeViewController:(MFMessageComposeViewController *)controller

                 didFinishWithResult:(MessageComposeResult)result {

    

    switch (result)

    {

        case MessageComposeResultCancelled:

            NSLog(@"Result: SMS sending canceled");

            break;

        case MessageComposeResultSent:

            NSLog(@"Result: SMS sent");

            break;

        case MessageComposeResultFailed:

            NSLog(@"短信发送失败");

            break;

        default:

            NSLog(@"Result: SMS not sent");

            break;

    }

    //[self dismissModalViewControllerAnimated:YES];

    [self dismissViewControllerAnimated:YES completion:nil];

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值