核心的Cocoa类库被封装在两个框架中,对应于各自的平台:Foundation和AppKit用于Mac OS X,Foundation和UIKit则用于iOS。和所有框架一样,这两个框架不仅包含动态共享库(有时是几个兼容版本的库),还包含头文件、API文档和相关的资源。Foundation以及AppKit(或UIKit)框架反映了如何分割那些涉及和没有涉及图形用户界面的Cocoa编程接口。对于每个平台,其两个核心框架对于最终产品为应用的Cocoa工程来说都是必不可少的。两个平台另外还支持与核心框架同样重要及实用的Core Data框架。[3]
2.3.1 Cocoa应用特性
在Mac OS X中创建一个Cocoa应用而又不必编写哪怕一行代码的情况是可能的。在Xcode中建立一个新的Cocoa应用工程,然后编译它就可以了。这点iOS应用同样可以做到。在编程方面,Cocoa为开发者提供很多免费和代价很低的支持。当然,要成为一个高效率的Cocoa开发者意着要熟悉新的概念、设计模式、编程接口和开发工具,而这方面的努力并不是无足轻重的。熟能生巧,编程在很大程度上会变成一种将Cocoa提供的编程组件和负责定义特殊逻辑的定制对象以及代码装配在一起、再将这些装配物组合在一起的练习。[3]
2.3.2 MFMailComposeViewController
Cocoa提供模态窗口MFMailComposeViewController类来实现发邮件的功能。它在MessageUI.framework中,你需要再项目中加入该框架,并在使用的文件中导入MFMailComposeViewController.h头文件。
该类包含一个类方法和若干实例方法:
+(BOOL)canSendMail //类方法,返回一个布尔值判断真实设备是否支持发送邮件;
- (void)setSubject:(NSString*)subject //设置邮件主题;
- (void)setToRecipients:(NSArray*)toRecipients //设置收件人地址;
- (void)setCcRecipients:(NSArray*)ccRecipients //设置抄送地址;
- (void)setBccRecipients:(NSArray*)bccRecipients //设置密送地址;
- (void)setMessageBody:(NSString*)body isHTML:(BOOL)isHTML //设置邮件内容,由isHTML的值决定该邮件内容是普通文本还是HTML网页;
- (void)addAttachmentData:(NSData*)attachment mimeType:(NSString*)mimeType fileName:(NSString*)filename //添加附件,mimeType为其mime类型,filename为其文件名。
2.4 Xcode简介
Xcode是苹果公司在Mac OS X和iOS平台下的集成开发环境(IDE)引擎。它也负责处理工程从最开始到最终部署过程中的大多数细节。它可以让您完成以下工作:
● 创建和管理工程,包括指定平台、目标的需求、依赖性和编译配置。
● 在具有语法染色、自动缩进等功能的编辑器上编写源代码。
● 在工程的不同组件中进行操作和检索,包括头文件和文档。
● 编译工程。
● 在本地或iOS模拟器(或远程设备)上,使用图形化的源代码级调试器上调试工程。
Xcode可以编译由C、C++、Objective-C和Objective-C++编写的源代码组成的工程。它可以生成Mac OS X支持的所有类型的可执行代码,包括命令行工具、框架、插件、内核扩展、程序包以及应用程序(对于iOS,只支持应用可执行文件)。Xcode允许您对编译和调试工具、可执行文件的打包方式(包括信息属性列表和本地程序包)、编译过程(包括拷贝文件、脚本文件的处理和其他编译阶段)以及用户界面(包括分立和多视图的代码编辑器)进行几乎无限的定制。Xcode还支持几个源代码管理系统(其中有CVS、Subversion和Perforce)使您可以将文件追加到代码库、提交修改、获取更新版本以及进行版本的比较。[3]
图1.3显示了一个Xcode工程的实例。
图1.3Xcode中的TextEdit实例
2.5 Interface Builder简介 IPAD上邮件系统集成应用与实现(4):http://www.751com.cn/jisuanji/lunwen_8098.html