首页 > 软件开发 > c语言 > 正文
3.4.2 添加一个视图控制器属性
2015-11-20 15:30:03     我来说两句      
收藏    我要投稿

需确保在应用程序生存期间,视图控制器始终存在。将视图控制器作为应用程序委托的一个实例变量是解决该问题的一个明智的方法。

添加到应用程序委托的实例变量是MyViewController类的实例。如果 声明了变量但未告知编译器MyViewController类的相关信息,编译器就会报告错误。通过导入头文件可以解决该问题,但在Cocoa中,通常 应该使用一个前向声明(forward declaration)—它向编译器承诺MyViewController类将在其他地方定义,因此编译器现在无需耗时来对其执行检查。(如两个类需相互引用,则前向声明可以避免环状包含,即两个头文件互相包含。)然后,请将MyViewController类的头文件导入到应用程序委托的实现文件。

(1)请在应用程序委托头文件(HelloWorldAppDelegate.h)的接口声明前面-即HelloWorldAppDelegate声明前面-添加前向声明:

@class MyViewController; 

(2)请在头文件大括号之间添加下面的世界杯外围投注网站,这是为了向应用程序委托添加一个实例变量:
MyViewController *myViewController;

(3)请在大括号之后 @end之前添加下面的属性声明:

@property (nonatomic, retain) MyViewController *myViewController;
基本上,上述声明指定:HelloWorldAppDelegate实例含有一个属性, 可以使用getter和setter方法—即myViewController和setMyViewController:方法—来访问该属性,同时,委托实例还会保持该属性(将在后续章节详细讨论保持)。

为确保正确,请确认HelloWorldAppDelegate类的接口文件(即HelloWorldAppDelegate.h文件)如下所示(不显示注释):

世界杯外围投注官网import <UIKit/UIKit.h>
@class MyViewController;
@interface HelloWorldAppDelegate : NSObject <UIApplicationDelegate> {
      UIWindow *window;
       MyViewController *myViewController;
}
@property (nonatomic, retain) IBOutlet UIWindow *window;
@property (nonatomic, retain) MyViewController *myViewController;
@end

现在 可以开始创建视图控制器的实例。

点击复制链接 与好友分享!回本站首页
您对本文章有什么意见或着疑问吗?请到论坛讨论您的关注和建议是我们前行的参考和动力  
上一篇:3.4.1 添加一个视图控制器类
下一篇:3.4.3 创建视图控制器实例
相关文章
图文推荐
排行
热门
文章
下载
读书

关于我们 | 联系我们 | 服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训 | 举报中心

版权所有: 红黑--致力于做实用的IT技术学习网站

世界杯外围投注官网