Ios 初学者

来源:互联网 发布:中云数据有限公司 编辑:程序博客网 时间:2024/04/30 17:34

1iOS界面与架构

创建一个单视图的工程,找到它的主函数,在主函数里面打上断点,逐步执行,可以查看它的执行过程。

模拟器没有传感器,没有内置GPS

加载视图过程中,一个应用程序启动以后,它首先会找到委托里面的applicationdidFinishLaunchingWithOptions,视图加载时会首先调用上述方法。

applicationdidFinishLaunchingWithOptionsUIwindow窗口相当于画框,UIViewController相当于画板,每一个UIViewController里的View相当于画布,View可以随便换。

applicationdidFinishLaunchingWithOptions执行实现的功能:首先创建一个窗口self.window

self.调用属性,_window调用的是成员。

成员和属性的关联:可以通过synthesize生成,@synthesize window = _window;释放之前有一个合成,即@synthesize window = _window;现在的Xcode可以将上述语句省去

然后创建一个根视图self.window.rootViewController = self.viewController;最后return YES

之后跳过断点执行的是applicationDidBecomeActive(UIApplication *)application方法

 

加载完成后,视图变得可操作,活跃的,此时窗口已经建立完成画布没有放上去。接下来执行applicationWillTerminate:(UIApplication *application方法,即线程将要中止的,例如玩游戏时有电话进来,此时游戏停止变为后台运行,因为电话短信在它的操作系统中级别是最高的。

还有两个方法applicationWillEnterForegrond:(UIApplication *application方法,回到前台;applicationDidEnterBackground(UIApplication  *)application方法,回到了后台以后。怎样回到后台,点home键或者手机的主菜单,则退到后台。

 

简单介绍创建视图工程的几个方法:

dealloc释放内存的方法,相当于C++里面的析构函数;因为重写一个方法的缘故,要写上super  dealloc,要写上父类的方法,先释放对象,再调用父类的dealloc方法。比如初始化方法,因为是NSObject里面的方法,它是所有的父类,此时你写的方法就等于重写。重写需要先调用父类的。

 

applicationdidFinishLaunchingWithOptions;加载视图,加载应用程序,它首先会执行这个方法。

启动程序

lifeCycle[40428:11303] willFinishLaunchingWithOptions

lifeCycle[40428:11303] didFinishLaunchingWithOptions

lifeCycle[40428:11303] applicationDidBecomeActive

 

按下home键

 

lifeCycle[40428:11303] applicationWillResignActive

lifeCycle[40428:11303] applicationDidEnterBackground

 

 

双击home键,再打开程序

 

lifeCycle[40428:11303] applicationWillEnterForeground

lifeCycle[40428:11303] applicationDidBecomeActive

 

 

如果不会使用断点,可以使用暴力调试,调用NSLog()函数,如下:NSLog(“%s”,__func__);输出当前方法名,(双下划线加上functionNSLog(“%s”,__FILE__);输出这个方法所在的文件名;NSLog(“%d”,__LINE__);输出当前的行数。

 

viewDidLoad功能:加载nib视图,进行初始化。

loadview;用代码实现Laber,弊端:如果没有使用nib文件,就用loadview作用较少,不常用。

 

<>和“”的区别:<>在系统里寻找需要的类,效率高,“”寻找自定义的类,效率较低。

 

@class 前向引用,告诉系统有这样一个类,稍后导入,一般写在.h文件中。

A调用BB又调用A是不正确的。不可相互导入,但可以用前向引用。

 

1Interface Builder简介:简称IB

用来构建图形界面,提供工具箱,包含常用界面元素,工具箱可扩展。

Nib文件:

界面配置文件,旧格式的.nib和新格式的.xib,苹果文档统一使用.nib

IB的组成部分:

Files  OwnerNib文件的拥有者,从磁盘加载nib文件

First  Responder:当前正在与之交互的对象,随着用户与界面的交互而变化

View(相框内的照片):显示用户界面,完成用户交互,是UIView类或其子类。

创建视图控制器:

步骤:

1)设计界面,从库中添加需要的控件

2)在代码中添加相应的IBOutlet变量和IBAction方法

3)连接控件到相应的变量

4)连接行为到相应的方法

原创粉丝点击