我是新手,使用Xcode的过程中遇到编译时错误,有没有办法从Xcode中获取更多详细信息?当我尝试构建应用程序时,唯一得到的消息是“Interface Builder Storyboard Compilation Failed”,我不知道哪个文件出了问题。
"Build"菜单下的日志导航器中也没有找到其他有用的信息。
我是新手,使用Xcode的过程中遇到编译时错误,有没有办法从Xcode中获取更多详细信息?当我尝试构建应用程序时,唯一得到的消息是“Interface Builder Storyboard Compilation Failed”,我不知道哪个文件出了问题。
"Build"菜单下的日志导航器中也没有找到其他有用的信息。
感谢wufoo,我找到了解决方法。
我有一个表格视图,其中有五个静态单元格。这些单元格包含各种UIImageViews、UITextFields等。我在主UITableViewController .h文件中创建了IBOutlets,并直接连接到故事板中的静态单元格UITextfields。但是这样是行不通的。
一旦我删除了这些连接,它就可以编译通过了。
看起来你必须把UIWidgets(textfields、labels、imageviews等)在静态创建的单元格中直接连接到该单元格的.h文件中的IBOutlets(而不是像我一样连接到tableview .h文件中的IBOutlets)。
---- 更新 ----
好的,我的最初帖子并不完全准确。看起来你可以直接将UITableViewCell的子类中的IBOutlets连接到主UITableViewController .h文件中。你只需要确保将Table View Content字段设置为“Static Cells”。我错过了那一步。
下面的图片说明了这一点:
选择你的storyboard,在左侧的详细面板中,确保选择了你的“Table View”。在右侧的属性检查器面板中,从“Dynamic Prototypes”更改为“Static Cells”。通过拖拽方式将组件放入storyboard中,如果你想将组件直接链接到主ViewController .h文件上的IBOutlet属性,那么你可以这样做。
我发现我遇到的问题是我在故事板中设置了静态单元格,然后又在代理方法cellForRowAtIndexPath:中试图重新创建它们。这并不太好用。如果使用静态单元格,则不需要使用任何单元格设置代理方法。
以下是一些对我也很有帮助的优秀读物: Apple TableView编程指南
在我的使用情况中,我已添加了一个新的目标,运行使用xcodebuild
的构建脚本。我一直收到相同的失败信息,但原因是默认情况下Build Settings支持 Mac Catalyst。 (我的主要目标不支持Mac Catalyst。)将这些更改为NO在Builds Settings中解决了我的问题。