- 1、本文档共15页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
iPhone开发基础教程
1欢迎来到iPhone的世界
关于本书
必要条件
运行Leopard的基于Intel的Macintosh计算机
注册成为iphone 开发人员,下载iphone SDK
关于并标准版与企业版问题
必备知识
Object-C编程知识
iPhone本身的熟悉(特性,界面,程序外观)
Iphone程序有何不同
只有一个正在运行的应用程序
执行代码时唯一的运行程序
只有一个窗口
应用程序与用户所有交互在此完成
受限访问
程序访问权限(文件读写,网络端口访问,管理员操作)
有限的响应时间
较快的响应时间
确保用户退出时不会丢失数据
有限的屏幕大小
480*320
有限的系统资源
内存不足,可用内存限制
缺少Cocoa工具
垃圾回收
新属性
与众不同的方法
没有键盘鼠标的交互方式
本书内容
准备开始吧
2创建基本项目
在Xcode中设置项目
启动Xcode
创建新项目File-New Project iphone-application-项目模板
View-Based Application Choose 保存
项目窗口
Classes Obejct-C类
Other Sources .pch main.m
Resources .xib .plist xib
FramewWorks
Products
Interface Buider 简介
Xib文件
代码 UIButton *myButton=[[UIButton alloc] initWithFrame:aRect];
界面对象组件面板拖
Nib文件的构成
视图中添加标签 双击添加文本
保存 Save
Build Build and Run Inspector窗口
Iphone 美化
.png
Info.plist
3处理基本交互
模型-视图-控制器范型 MVC
M 保存应用程序数据的类
设计一些Object-C类来保存应用程序的数据
V 窗口,控件和其他用户可以看到并能与之交互的元素组成部分
C 将模型与视图绑定在一起,确定如何处理用户输入的应用程序逻辑
开发人员创建的类和特定于应用程序的类组成 通用控制器类
确保实现最大可重用性
创建项目
创建视图控制器
UIViewController 子类
输出口 IBOutlet UIButton *myButton;
操作方法 (IBAction)doSomething:(id)sender;
添加到接口
#importUIKit/UIKit.h
@interface Button_FunViewController:UIViewController
{
IBOutlet UILabel *statusText;
}
@property(retain,nonatomic) UILabel *statusText;
-(IBAction) buttonPressed:(id)sender;
@end
垃圾收集 如果定义的属性是一个对象,通常可选属性应该指定为 retain
额外代码的生成开销 nonatomic
点表示法 用于修改 访问
添加到实现
#import “Button_FunViewController.h”
-
@implementation Button_FunViewController
@synthesize statusText;
-(IBAction)buttonPressed:(id)sender
{
NSString *title=[sender titleForState:UIControlStateNormal];
NSString *newText=[[NSString alloc] initWithFormat:@”%@ button pressed.”,title];
statusText.text=newText;
[newText release];
}
-(void)dealloc
{
[statusText release];
[super release];
}
@end
简便方法 工厂方法
如果未分配它或者保留它,则不要释放它。
自动释放的代价
消息嵌套
使用应用程序的委托
Button_FunAppDelegate.h
#importUIKit/UIKit.h
@class //注意 Button_FunViewController;
@interface Button_FunAppDelegate:NSObjectUIApplicationDelegate
{
IBOutlet UIWindow *window;
IBOutlet But
文档评论(0)