我构建了一个非常简单的基于选项卡的应用程序,其中包含2个选项卡,每个选项卡都与自己的视图控
直到目前为止。然后我在第二个视图控制器上创建一个简单的IBOutlet,如此
#import <UIKit/UIKit.h>
@interface bViewController : UIViewController {
IBOutlet UITextField *aField;
}
@property (nonatomic, retain) UITextField *aField;
@end
然后我在我的.m文件中合成它,然后我进入我的xib,将文本字段拖到视图上,然后将文件所有者设置为'aField'。
到目前为止非常教科书。
它构建,但是当我运行它并选择第二个选项卡(显示我已经链接UITextfield IBOutlet的视图)时,它会抛出此错误。
warning: Unable to read symbols for "/System/Library/Frameworks/UIKit.framework/UIKit" (file not found).
warning: Unable to read symbols from "UIKit" (not yet mapped into memory).
warning: Unable to read symbols for "/System/Library/Frameworks/CoreGraphics.framework/CoreGraphics" (file not found).
warning: Unable to read symbols from "CoreGraphics" (not yet mapped into memory).
这是非常奇怪的,因为这最近才开始发生。有线索吗?
更新
我开始怀疑配置错误而不是语法错误,因为这些是我为了演示问题而创建的剥离示例。仅当我创建基于选项卡的应用程序时,此操作才会失败
如果我在基于视图的应用程序中执行完全相同的操作,它可以正常工作。
答案 0 :(得分:1)
好的,经典的n00b错误。显然,错误与链接到IBOutlet无关。问题源于以下事实:当使用基于选项卡的应用程序时,您必须在视图XIB和选项卡条本身上设置viewController类。
答案 1 :(得分:0)
插座有效吗?确保你的二进制链接到UIKit和CoreGraphics框架。仅在添加第二个插座时才会出现此错误吗?如果您正在使用版本控制,是否可以返回并确定问题何时开始?
我确实注意到了一件事,我不确定这是否能解决您的问题,但您通常会将IBOutlet
标记放在属性上,如下所示:
@property (nonatomic, retain) IBOutlet UITextField *aField;
在尝试将值分配给实例变量与属性之间时,NIB加载系统可能会感到困惑。
答案 2 :(得分:0)
这是一个很长的镜头,但也许您以某种方式将SDK切换到Mac OS X SDK而不是iPhone SDK。我相信如果您在Xcode中获取项目信息,则可以使用该设置 - 确保基本SDK是iPhone SDK。