界面构建器更改不会反映在运行时
Interface builder changes do not reflect in runtime
几个月没有打开这个项目,今天打开它时,我添加到 ViewController 界面的每个新视图都没有反映在相应的 Storyboard 中。例如,更改按钮背景不会在运行时反映在应用程序中。
此外,添加新视图并通过 @IBOutlet 引用它们也不起作用。我在 viewDidLoad
上得到了一个零视图参考。奇怪的是,我之前拥有的所有视图以及正在访问 viewDidLoad 的所有视图都不是零。只有我添加的新视图有这个问题。
我已经尝试清除 DerivedData 文件夹和模拟器缓存,但我 运行 没有东西可以尝试了。还有其他人遇到这个问题吗?
总而言之,我现在对界面生成器所做的每项更改都会应用到我的视图中。
我是运行Xcode12.5.
编辑: 我尝试以编程方式添加 UILabel 并且它有效。因此,故事板在 ViewController 中创建视图引用的方式存在问题。我仍然需要帮助。
可能发生这种情况的一种情况是:
- 您有多个目标,每个目标都有不同的故事板集
- 您修改了在您构建的当前目标中无法访问的故事板
你检查过约束了吗?它们中的任何一个被重叠/剪裁或根本没有定义任何约束? (如果是新视图而不是 BG 颜色)
几个小时后我发现了这个问题。导致这种情况的原因是,当我过去本地化情节提要时,XCode 为每种语言创建了一个情节提要,而不是仅为每种语言创建 2 个 .string 文件。所以这成功了:
之前:
之后:
问题解决了!谢谢大家
几个月没有打开这个项目,今天打开它时,我添加到 ViewController 界面的每个新视图都没有反映在相应的 Storyboard 中。例如,更改按钮背景不会在运行时反映在应用程序中。
此外,添加新视图并通过 @IBOutlet 引用它们也不起作用。我在 viewDidLoad
上得到了一个零视图参考。奇怪的是,我之前拥有的所有视图以及正在访问 viewDidLoad 的所有视图都不是零。只有我添加的新视图有这个问题。
我已经尝试清除 DerivedData 文件夹和模拟器缓存,但我 运行 没有东西可以尝试了。还有其他人遇到这个问题吗?
总而言之,我现在对界面生成器所做的每项更改都会应用到我的视图中。
我是运行Xcode12.5.
编辑: 我尝试以编程方式添加 UILabel 并且它有效。因此,故事板在 ViewController 中创建视图引用的方式存在问题。我仍然需要帮助。
可能发生这种情况的一种情况是:
- 您有多个目标,每个目标都有不同的故事板集
- 您修改了在您构建的当前目标中无法访问的故事板
你检查过约束了吗?它们中的任何一个被重叠/剪裁或根本没有定义任何约束? (如果是新视图而不是 BG 颜色)
几个小时后我发现了这个问题。导致这种情况的原因是,当我过去本地化情节提要时,XCode 为每种语言创建了一个情节提要,而不是仅为每种语言创建 2 个 .string 文件。所以这成功了:
之前:
之后:
问题解决了!谢谢大家