IOS入门教程
内容
MAC OS X简介
Objective-c语法
IOS开发
IOS:手机操作系统,IPHONE IPAD以及IPOD TOUCH
开发工具:Xcode,只有苹果操作系统上才有
Mac os x简介
苹果电脑操作系统
以Unix为基础,既简单一用又功能强大
在此操作系统下,可使用Apple提供的开发工具Xcode开发Mac os x和IOS引用程序
Mac os x与Windows的差距:
干净的桌面
没有分C盘、D盘的概念
一个程序奔溃不会影响到整个操作系统,非常安全
Finder---我的电脑
Safari----IE
Mac OS X 获取途径
虚拟机:0成本,速度慢,对PC机性能高
黑苹果(直接在电脑装):成本低,速度快,安装难度大
苹果设备iMac(一体机)\macbook(苹果笔记本)\mac mini(很小的主机4000-6000左右) :成本高,速度快,无兼容性问题。
Objective-c简介(简称OC)
OC是在C语言的基础上,增加了最小的面向对象语法,完全兼容C语言
可以开发MAC OS X和IOS平台的应用程序
可以嵌入C语言、C++语言
OC语法预览:
OC中没有类似JAVA中的包名这个概念,取而代之的是程序员必须给类名加上前缀,使用前缀可以有效的类名冲突,如NsString NSArray
为了避免跟C、C|++关键字冲突,所有的OC关键字都以@开始
Nil = null
Self = this
基类:NSObject
For循环快速遍历: for(xx in xx)
继承:单继承,用super关键字引用父类
日志输出:NSLog(@“Hello”); NSLog(@”age is %i”,27);
类:
OC中的一个类一般分为2个文件:
.h:类的声明文件,用于声明变量、函数
.m:类的实现文件,用于实现.h的函数
类的声明使用关键字:@interface、@end
类的实现使用关键字:@implementation、@end
方法的声明和实现,都必须以+-开头
+表示静态方法
-表示动态方法
在.h中声明的所有方法都是public类型
变量必须定义在类的{}中
变量的作用域:
@public全局都可以访问
@protected 只能在类内部和子类访问
@private 只能在类内部访问
Main.m是应用程序的入口
NSLog(@”hello the world”);
NSLog(@”my age is %i”,age);//百分号是占位符,i是整形数字,浮点型是F,
%.2代表2位整数
NSObject 所有类都继承这个
会生成两个子类
student.h文件
#import<Foundation/Foundation.h>//导入其他的类,系统自带文件就用<
@interface Student: NSObject {//冒号代表继承
//定义成员变量
int age;
int no;
}//注意,成员变量必须写在括号里面
//定义方法
- (int)getAge;//一般不建议写get
-(int)age;//这样写即可
- (void)setAge:(int)age;//注意一个冒号对应一个参数
//注意,冒号也是方法名的一部分
-(int)no;
-(void)setNo:(int)no;
-(void)setAge:(int)newAgeandNo:(int)newNo//方法名是:setAge:andNo:
@end//这个是配对的
student.m文件
------------------------------------------------------
#import "Student.h"
@implementation Student
-(int)age{
returnage;
}
-(void)setAge:(int) age{
self.age = age;//这样写是错的,会造成死循环。
}
-(int)no{
return no;
}
-(void)setno:(int) no{
self.no = no;//这样写是错的,会造成死循环。
}
-(void)setAge:(int)newAge andNo:(int)newNo{
age = newAge;
no = newNo;
}
@end
---------------------------------------------------------
开始使用类:
0、先引入要使用的类
1、分配内容
Student *student = [Student alloc];//分配内存
2、初始化
Student = [student.init]
Student @student = [[Student alloc]init];//两句合一
[student setAge:80];
[student setNo:1];
int age = [student age];
int no = [studnet no];
@NSLOG(@"");
[student release];//释放内存
OC不允许直接访问成员变量
Student.age = 80;编译器会自动帮我们生成[student setAge:80]
Int age =student.age;//等于int age = [studentage]
IOS开发
IOS是苹果移动设备的操作系统
Iphone\IPAD、ipad mini\ipod touch
必要条件:
操作系统:Mac OS X
开发工具:Xcode
开发方向:应用程序,游戏
在Xcode中选择Single View Application是开发应用程序的。
IOS核心类:
UIView:视图,屏幕上能看得见摸得着的东西都是UIView,比如按钮、文本标签、表格
UIViewController:内部默认有个UIView视图,负责管理UIVIEW的生命周期,装配数据到UIVIEW上,处理UIVIEW事件
如何管理UIVIEW的生命周期?怎么给UIVIEW装配数据以及显示数据?
每一个控制器内部都有一个UIVIEW
Xib文件是VIEW文件,用来描述控制器的view长什么样子
方法名改为:-(IBAction)login表示可以跟按钮关联,直接拖到按钮即可
@property( nonatomic,assign) IBOutlet UITextField*qq;// property是自动生成Get方法与Set方法
@property( nonatomic,assign) IBOutlet UITextField*pwd;
NSString *qqText = seft.qq.text;//所有的IOS对象都必须加上*号
NSLog(@“qq: %@ 密码:%@”,qqText,pwdText);