Sam*_*hie 15 xcode interface-builder iboutlet ibaction ios
我目前正在重构一些共享一些IBOutlets和IBAction方法的视图控制器.我将插座声明和IBAction方法移动到一个超类中,从子类中删除它们.
现在,当我打开Interface Builder时,我发现我无法看到超类中声明的出口或动作.这些连接仍然存在,因为我在重构之前将它们连接起来,但是它们已经变灰了.(重要的是要注意连接也是工作,因为我的操作在按下按钮时触发,我的插座被正确修改.)
问题是,如何让界面构建器识别来自超类的出口?这是可能的,如果没有,你们都推荐什么?
(只是为了好玩,这是我的超类头文件:)
@interface TFMainViewController : UIViewController {
UIImageView *logoImage, *thinkfunImage;
UIButton *buyFullButton;
}
@property (nonatomic, retain) IBOutlet UIImageView *logoImage, *thinkfunImage;
@property (nonatomic, retain) IBOutlet UIButton *buyFullButton;
-(IBAction) buyFullVersion;
@end
Run Code Online (Sandbox Code Playgroud)
编辑:如果有人想知道,我正在使用Xcode和IB 3.2.5,iOS 4.2 SDK.
ars*_*ius 21
直到大约一小时前,我才意识到甚至可以连接到界面构建器中的超类.由于这是我能找到的关于如何做到的唯一问题,我会添加我的答案,即使这个问题已经过时了.我的答案是关于Xcode 4,而不是Xcode 3.
据我所知,您无法使用助理编辑器连接到超类中的插座,但您可以通过单击IB中的"文件所有者"来实现.这应该显示Utilities-> Connections Inspector中的所有出口.然后,您可以按Ctrl +单击检查器中的插座(单击"+"符号),然后将其拖到IB中的视图中.