IOS入门教材笔记

来源:互联网 发布:mysql 查看mysql字符集 编辑:程序博客网 时间:2024/06/11 21:52

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);

 

 

 

原创粉丝点击