扩展效用模板
我正在使用Xcode Utility模板(Mainside / Flipside),我需要添加一个新屏幕。我添加了:
docView.xib (copy of FlipsideView.xib)
docView.m
docView.h
docViewController.m
docViewController.h
在rootViewController.h中我添加了:
UINavigationBar *docNavigationBar;
docViewController *docViewController;
@property (nonatomic, retain) UINavigationBar *docNavigationBar;
@property (nonatomic, retain) docViewController *docViewController;
在rootViewController.m中,我合成了添加内容:
@synthesize docNavigationBar;
@synthesize docViewController;
我将.h导入rootViewController.m:
#import "docViewController.h"
当我尝试编译时出错:
RootViewController.m:22: error: syntax error before 'docViewController'
警告:
RootViewController.m:160: warning: property 'docViewController' requires method '-docViewController' to be defined - use @synthesize, @dynamic or provide a method implementation
RootViewController.m:160:警告:属性'docViewController'需要定义方法'setDocViewController:' - 使用@synthesize,@ dynamic或提供方法实现
我错过了什么?
答案 0 :(得分:1)
实际上,我认为他的意思是放了docViewController(它是新的视图控制器,对吧?)。在任何情况下,如果这是你的意思,而不是Eric所说的FlipsideViewController,那么你的问题就是你将它命名为与属性相同。馊主意。正常的Objective-C约定是将类名的第一个字母大写,然后在将它们用作属性等时将它们小写。
docViewController *docViewController;
应该是:
DocViewController *docViewController;
这样可以更好地工作:)
答案 1 :(得分:0)
在rootViewController.h中,看起来像是你的声明行:
docViewController *docViewController;
应该是:
FlipsideViewController *docViewController