来源:互联网 发布:智能电网技术知乎 编辑:程序博客网 时间:2024/04/28 15:07

协议可以多继承,但不能继承类。协议定义的是多个类的共同公共行为规范,因此,协议里的所有方法都是公开的访问权限

程序可以使用协议来定义变量

NSObject<协议1,协议2....>* 变量

id<协议1,协议2....>* 变量

它们编译时类型仅仅只是所遵守的协议类型,因此只能调用该协议中定义的方法

协议只是定义了方法,实现了该协议的对象来实现协议中的方法

@class 类名 与import "类名.h"的效果一样,只是前者告诉系统有这个类名,后者还需导入整个源文件

当程序创建完成时,系统协议里自带的六个个方法

1.当应用程序启动后将会调用该方法

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary*)launchOptions

2.当应用程序从活动状态转入不活动状态时,系统将会调用该方法,当应用程序突然中断,如玩游戏时电话进来。或程序进入后台状态时也会调用该方法

- (void)applicationWillResignActive:(UIApplication *)application

3.重写该方法来释放共享资源,保持用户数据,取消定时器,当应用程序在后台执行时,系统会调用该方法,而不是调用applicationWillTerminate

- (void)applicationDidEnterBackground:(UIApplication *)application

4.当应用程序将要进入前台时将会调用该方法

- (void)applicationWillEnterForeground:(UIApplication *)application

5.当应用程序进入前台并转入活动状态时将会调用该方法

- (void)applicationDidBecomeActive:(UIApplication *)application

6.当应用程序被终止时,系统将会调用该方法

- (void)applicationWillTerminate:(UIApplication *)application


UIViewController中常见的需要重写的方法,重写时都需调用【super 方法名】

1.viewDidLoad:当该控制器管理的视图被装载完成后,系统自动调用该方法。如果需要在视图装载完成后执行某些代码,即可通过重写该方法来完成。

2.didReceiveMemoryWarning:当系统检查到可用内存紧张时将会调用。开发者也可自己重写该方法,来释放那些暂时不会使用的对象所占用的内存。

3.viewWillAppear:当控制器管理视图将要显示出来时,系统自动调用。如果要在视图将要显示出来时执行某些代码,可通过重写该方法来完成。重写时调用【super viewWillAppear:Yes】

4.viewDidAppear:当控制器管理的视图显示出来后,系统自动调用。如果要在视图显示出来后执行某些代码,可通过重写该方法来完成。

5.viewWillDisappear:当控制器管理的视图将要被隐藏或将要被移除窗口时,系统自动调用。

6.viewDidDisappear:当控制器管理的视图被隐藏或移除窗口后,系统自动调用。

7.viewWillLayoutSubviews:当控制器管理的视图将要排列它所包含的所有子视图时,系统自动调用。

8.viewDidLayoutSubviews:当控制器管理的视图把它所包含的子视图排列完成后,系统自动调用。


自定义虚拟键盘:UIToolbar,UIBarButtonItem

自定义选择内容后的菜单:UIMenuItem,UIMenuController


0 0
原创粉丝点击