Xcode 13中如何将Storyboard的Label/Button等元素连接到ContentView代码?
Xcode 13手动添加Storyboard后无法关联控件的解决方案
- 检查ViewController自定义类绑定
选中Storyboard中放置控件的对应ViewController,点击顶部的黄色控制器图标,打开右侧Identity检查器,在Custom Class区域的Class下拉框中选择需要关联的代码对应的控制器类,同步确认下方Module为当前项目名称,不要留空或选择其它第三方模块。 - 配置Storyboard为项目有效界面
Xcode 13新建项目默认关闭Storyboard配置,需要手动修改项目配置:- 点击左侧导航栏最顶部的项目根文件,选中TARGETS下的应用目标,切换到Info标签页
- 如果不需要多场景支持,直接删除
Application Scene Manifest配置项,新增Main storyboard file base name配置,值填写你手动添加的Storyboard文件名(无需带.storyboard后缀) - 如果保留多场景配置,展开
Application Scene Manifest>Scene Configuration>Application Session Role,将第一条配置的Storyboard Name值修改为你的Storyboard文件名
- 正确执行关联操作
点击Xcode右上角的双圆圈图标打开助理编辑器,确保左侧展示Storyboard,右侧展示对应控制器代码。按住Ctrl拖动控件到代码的类定义大括号内部,不要拖动到类定义外部或方法实现内部,松手后选择Outlet/Action类型、填写变量名即可完成关联。
如果助理编辑器没有自动弹出对应控制器代码,可点击助理编辑器顶部的导航栏,选择Automatic匹配对应的控制器类即可。 - 异常问题修复
以上配置全部确认无误后仍然无法关联,按Command + Shift + K清理Xcode构建缓存,重启Xcode后重试即可。
内容的提问来源于stack exchange,提问作者Stevepit15
相关产品推荐
相关产品推荐

