杂感1

1、复制字符串到剪切板

UIPasteboard *pasteboard = [UIPasteboard generalPasteboard];
pasteboard.string = @"复制字符串到剪切板";

2、打电话

创建一个成员变量UIWebView来加载URL,拨完后能自动回到原应用

@interface ViewController ()
@property(nonatomic,strong)UIWebView *webView;
@end
if (_webView == nil) {
        _webView = [[UIWebView alloc] initWithFrame:CGRectZero];
    }
    [_webView loadRequest: [NSURLRequest requestWithURL:  [NSURL URLWithString: @"tel://电话号码"]]];  //   // tel:13534268291
    //需要注意的是:这个webView千万不要添加到界面上来,不然会挡住其他界面

3、发短信

如果想指定短信内容,那就得使用MessageUI框架。包含头文件:

#import 

遵循MFMessageComposeViewControllerDelegate协议:

@interface ViewController ()
@end
MFMessageComposeViewController *vc = [[MFMessageComposeViewController alloc] init];
    // 设置短信内容
    vc.body = @"短信内容";
    
    // 设置收件人列表
    vc.recipients = @[@"号码1", @"号码2"];
    // 设置代理
    vc.messageComposeDelegate = self;
    // 显示控制器
    [self presentViewController:vc animated:YES completion:nil];

实现发短信的代理方法:

//代理方法,当短信界面关闭的时候调用,发完后会自动回到原应用
- (void)messageComposeViewController:(MFMessageComposeViewController*)controller didFinishWithResult:(MessageComposeResult)result {
    // 关闭短信界面
    [controller dismissViewControllerAnimated:YES completion:nil];
    if(result == MessageComposeResultCancelled) {
        NSLog(@"取消发送");
    } else if(result == MessageComposeResultSent) {
        NSLog(@"已经发出");
    } else {
        NSLog(@"发送失败");
    }
}

4、发邮件

遵循MFMailComposeViewControllerDelegate协议:

@interface ViewController ()
@end
MFMailComposeViewController *vc = [[MFMailComposeViewController alloc] init];
    //************************ 设置邮件内容 ************************
    // 设置邮件主题
    [vc setSubject:@"主题"];
    // 设置邮件内容
    [vc setMessageBody:@"邮件内容" isHTML:NO];
    // 设置收件人列表
    [vc setToRecipients:@[@"收件人@qq.com"]];
    // 设置抄送人列表
    [vc setCcRecipients:@[@"抄送人@qq.com"]];
    // 设置密送人列表
    [vc setBccRecipients:@[@"密送人@qq.com"]];
    
    // 添加附件(例如:一张图片)
    UIImage *image = [UIImage imageNamed:@"图片.jpeg"];
    NSData *data = UIImageJPEGRepresentation(image, 0.5);
    [vc addAttachmentData:data mimeType:@"image/jpeg" fileName:@"lufy.jpeg"];
    // 设置代理
    vc.mailComposeDelegate = self;
    // 显示控制器
    [self presentViewController:vc animated:YES completion:nil];

实现发邮件的代理方法:

//邮件发送后的代理方法回调,发完后会自动回到原应用
- (void)mailComposeController:(MFMailComposeViewController*)controller didFinishWithResult:(MFMailComposeResult)result error:(NSError*)error
{
    // 关闭邮件界面
    [controller dismissViewControllerAnimated:YES completion:nil];
    
    if(result == MFMailComposeResultCancelled) {
        NSLog(@"取消发送");
    } else if(result == MFMailComposeResultSent) {
        NSLog(@"已经发出");
    } else {
        NSLog(@"发送失败");
    }
}

5、打开其他常见文件

如果想打开一些常见文件,比如html、txt、PDF、PPT等,都可以使用UIWebView打开,只需要告诉UIWebView文件的URL即可。至于打开一个远程的共享资源,比如http协议的,也可以调用系统自带的Safari浏览器:

//创建需要打开的 URL 地址
NSURL *url = [NSURL URLWithString:@"http://www.baidu.com"];
[[UIApplication sharedApplication] openURL:url];

你可能感兴趣的:(杂感1)