从只Android开发 到 iphone,android两样双修
来源:互联网 发布:game of life 算法 编辑:程序博客网 时间:2024/04/30 20:14
我会从今天 2012-12-28日,将每天学iphone的点滴记载下来,留给后来人。。
2012-01-19
创建app 选择Universal , 这样app 在iphone或者ipad上 都可以运行。。
2012-01-18日。。
没有Object-C的基础,请看:http://www.apress.com/book/view/9781430218159
下载 The Obejctive-C 2.0 Programming Language, 请看:http://developer.apple.com/iphone/library/documentation/Cocoa/Conceptual/ObjectiveC
Android or Iphone Books Source Code: http://www.apress.com/9781430216261 在Apress 公司。。。
Xcode 在 Developer/Applications 文件夹里面。。叫Xcode...
不同版本的Xcode 可能不能在Mac Os X 里面安装。。但是, 我现在下的Xcode 3.1 与 4.2 无所谓谁安装先后,都可以在 Mac os X 10.6.8 里面 运行。
悲剧,我下的那个Xcode3.1没有iphone SDK.
Object-C 是单继承。最基本的对象类就是NSObject.
- (BOOL) sendEmailTo:(NSString *)paramTo
withSubject:(NSString *)paramSubject
andEmailMessage:(NSString *)paramEmailMessage{
if ([paramTo length] == 0 ||[paramSubject length] == 0 ||[paramEmailMessage length] == 0){
NSLog(@"Empty parameter(s) is/are provided.");
return NO;
}
return YES;
}
这里,上面这个方法名 是:sendEmailTo:withSubject:andEmailMessage: 这个好长啊
重载, java里面可以这样: display (int x); display(string x); 可以编译通过。或者 String display(); int display(); 都可以。
object-C 不行, 改参数类型或者返回类型不行,必须该参数名或者参数个数。
Allocation / Initialization <一个对象必须首先 alloc, 分配内存空间,然后才能 initialize 它的值
2012-01-17日
Xcode各个版本下载网站: https://developer.apple.com/downloads/index.action
office for mac: http://www.microsoft.com/mac/default.mspx.
2012-12-28日。。
1, 环境配置。。
iphone的开发工具用的比较多的就是Xcode..
cocoa nib object-c mac os, 掌握这些新概念
2, 文件后缀为xib的, 代表xml interface builder.. 只要学objectC,就可以了。
3, 下载 iphone SDK..
注册iphone的开发者 账号。http://developer.apple.com/devcenter/ios/index.action
如果你想在自己的设备iphone上跑你的应用,必须成为独立个人, 要花费99美元。。Individual iPhone Developer Program
登录进去, 在ios Dev Center里,可以发现ios sdk 5 及 xcode(IDE)
4, 可以看sdk document, 上论坛 学习。。
5. 没有C基础的 可以 看这本书<Absolute Beginner’s Guide to C by Greg Perry >
6. 头文件.h, 包含 方法原型 以及 变量 声明 。。
.m 文件, 包含方法实现 以及变量实现。。。。 ObjectC 用.h头文件来做接口的声明,用资源文件.m来做实现。
指令: 预处理指令 + 编译指令
预处理指令的定义:
优先运行于编译的区别程序,处理预处理指令从而用具体文件内容来代替导入语句,执行#if等条件语句,执行定义。
预处理指令,以#开头
7. #import 预处理指令, 相同头文件只能导入一次。 如 #import <file.h> or #import "file.h"
8.#define, 在头文件里定义 常量。。
编译指令, 以@开头
* 号, 代表对象要消耗一定的内存。。 对于基本类型是不会消耗内存的。。 所以,不需要*号。。比如下面:
- (void) setAge:(NSUInteger) age; //age是Integer型, 不占内存
- (void) setName:(NSString*) yourName andAge:(NSUInteger) age; //第一个参数是String型的,占内存, 第二个参数的意义:andAge, 类型Integer,名字age.
instance method : 相当于 实体方法,
9. properties
在头文件里声明 - @property (nonatomic,retain) NSString * myName;
在m文件里实现 - @synthesize myName;
2012-01-09
IBOutlet 全称 InterfaceBuilder Outlet, 建立一个lable,就需要定义其类型为这个。。。
xib 的 fileowner里,指定界面的文本与程序里的属性配对。。
@synthesize 告诉编译器为属性创建 访问者。。
viewDidLoad 是生命周期里,相当于android里的oncreate方法。。就是应用调用view时,先调用viewDidLoad方法。如果是第一次调用view,还会接着调用ViewWillAppear方法。。
NSBundle, 相当于android里的Resources, 就是开发者把所有资源放进iphone项目app的Resources 文件夹里,这些就是bundle. iphone项目的 类似java的 mama100.apk, iphone是mama100.app,
@property 是个相当巧妙的东西, 将java里的getter, setter直接省略了, 系统给你生成。。
2012-01-10
iphone开发几组易头晕的拖动
一, owner 连接:
方法 1, 先xib里添加button 组件,然后打开双屏幕,右边屏幕是h文件,从xib界面点button,再点ctrl,然后 鼠标长按,再拖动至h文件,会自动生成IBOutlet声明;
方法 2, 先头文件里声明IBOutlet button,然后再在xib里添加button, 然后通过点button,再点击file's owner, 在出现的 connection 监视器里,选择Outlets栏,选择对应的button Outlet,然后点击后面的 小圆圈, 拖动至xib里的button,建立连接;
二, action连接:
方法 1, 同上面一个,前面一样,选中button,点击ctrl,然后鼠标再单击一次button,就会弹出button的快捷窗口,包含:
sent Events, Reference Outlets, Referencing Outlet Collections 三个列表, 因为我们是要定义action, 所以在 sent Events里选择 Touch Up Inside, 选中右边的圆圈,然后拖动到右边 头文件, 就会自动生成 - (IBAction) 的 声明;
方法 2, 先在头文件里声明IBAction, 然后再在xib里添加button, 然后通过点button,再点击file's owner, 在出现的 connection 监视器里,选择send Events栏,选择对应的event: Touch Up Insider, 然后点击后面的 小圆圈, 拖动File's Owner, 选择 IBAction , 建立连接;
Iphone 的 按钮状态 比 andriod 容易多了, 不需要像android的那样,设置selector...
2012-01-17日
Xcode各个版本下载网站: https://developer.apple.com/downloads/index.action
office for mac: http://www.microsoft.com/mac/default.mspx.
最近公司之前Iphone的业务负责人休产假了,所以,iphone开发自然也就落到了我的头上。。
- 从只Android开发 到 iphone,android两样双修
- 从Android手机导出联系人到iPhone
- 从Windows到Android开发
- 从JAVA到Android开发
- Android 开发从入门到精通
- Android应用开发从入门到实践
- Android开发从入门到精通
- Android开发从入门到精通
- Android开发从入门到精通
- Android 开发从入门到精通
- Android 开发从入门到精通
- Android 开发 NDK从入门到精通
- Android 开发从入门到精通
- android 开发从入门到精通
- 从嵌入式linux到android应用开发
- Android 开发 NDK从入门到精通
- android BLE从入门到精通开发
- Android NDK开发从0到1
- 游戏地图分块加载资源篇——切图工具
- CSQA
- Android模拟按键——源码环境下开发应用程序
- VS快捷键使用分类收集
- Python各个框架工具介绍
- 从只Android开发 到 iphone,android两样双修
- 2011研发工作总结
- 陆游和唐婉,潇潇和沐月
- jquery与checkbox的checked属性的问题
- 给UITableViewCell动态调整高度
- JS高性能字符串连接StringBuffer类[转]
- map的三种遍历方法!
- Flex中的 for in 与 for each in
- vs2008如何启用JQery的智能提醒功能