IB Designables:无法渲染和更新自动布局状态(谷歌地图)
Posted
技术标签:
【中文标题】IB Designables:无法渲染和更新自动布局状态(谷歌地图)【英文标题】:IB Designables: Failed to render and update auto layout status (Google Maps) 【发布时间】:2019-06-06 08:06:58 【问题描述】:几天后,我遇到了以下问题:
Main.storyboard: error: IB Designables: Failed to render and update auto layout status for SomeViewController (BeW-27-X9H): dlopen(GoogleMaps.framework, 1): no suitable image found. Did find:
GoogleMaps.framework: mach-o, but wrong filetype
我在不同的视图控制器中有 28 个这样的错误,尽管我只在其中几个中使用了谷歌地图。由于这个问题,我无法编辑某些视图控制器(它们通常是空白的)。我可以编辑其他控制器,但通常不会更新自己(我更改了某些内容但看不到它),除非我重新打开情节提要或重新启动 Xcode。
我已经阅读了无数的解决方案,但没有一个是有效的。我读过原因是可可豆荚,但是我不能降级到 1.4,因为我的一些豆荚需要 1.5。 post_install 修复也无济于事。
我已经尝试清理构建文件夹和派生数据。 我试过重新运行 pod update。 我试过多次重启 XCode 和 Mac OS。
不过,问题仍然存在。有一次,它无缘无故消失了几分钟,我可以轻松地编辑故事板。然后它又回来了。
如果真的是可可豆荚的问题,我尝试了手动集成,没有可可豆荚。尽管如此,还是有同样的错误。
我也尝试了以下解决方案:
import GoogleMaps
class GoogleMapView: GMSMapView
但问题不会消失。有什么办法可以解决这个烦人的问题吗?它突然出现了。
【问题讨论】:
应用程序是否在设备/模拟器上打开而不会崩溃? 是的,它运行得非常好。 目前遇到了这个问题,我注意到每次打开情节提要时 xcode 都会自动进行一些更改,并且我总是添加还原以使视图正确呈现,但现在我无法让它们不再显示...你能解决这个问题吗?如果你解决了呢? @Makalele 好吧,它只是一天自己消失了,工作了一个月左右,几天前它又出现了,今天它在我安装 mac os update 后消失了(也许重启有帮助,很难说)。这是一个非常烦人的问题,因为没有很好的方法来摆脱它。 【参考方案1】:这太愚蠢了,但有时我只是从情节提要中删除 @IBDesignable 视图然后撤消。
【讨论】:
我试过了,没用。我什至在根本没有 GMSMapView 的视图控制器中遇到了这个愚蠢的错误。【参考方案2】:也许您可以制作一个包含 GMSMapView(不是子类)的自定义视图, 并改用 Storyboard 中的自定义视图。
【讨论】:
即使我将 GMSMapView 子类更改为 UIView 错误也不会消失。它们看起来像是被“缓存”了。【参考方案3】:我在情节提要文件上遇到了一些渲染问题(与其他组件)。我不明白主要原因,但我认为它与硬件性能有关(不确定)。 解决方法是暂时更改导致问题的视图类(使用标准 UIView)以轻松编辑情节提要,并在完成更新后撤消此更改。 希望这会有所帮助。
【讨论】:
问题是我必须在所有控制器中都这样做,因为即使剩下一个也会导致整个故事板中断。甚至更多..我在编辑 xib 文件时也遇到了错误,而且我没有谷歌地图。这个问题突然出现... 我什至尝试将 GoogleMapView: GMSMapView 类更改为 GoogleMapView: UIView 类,但错误不会消失。 你能分享一个导致问题的示例故事板吗,我会尝试在我自己的机器上检查并给你反馈。 这不是一件容易的事。我有这么多控制器,这太耗时了。我不能分享整个项目。无论如何,我创建了一个空项目,向其中添加了地图,它工作得很好。我猜这是地图和其他 UI 组件之间的一些冲突。但是有太多的东西想不通。以上是关于IB Designables:无法渲染和更新自动布局状态(谷歌地图)的主要内容,如果未能解决你的问题,请参考以下文章
Xcode - IB Designable:无法渲染和更新自动布局(找不到合适的图像)
解决UITableView xib添加到Storyboard出现IB Designables错误
解决UITableView xib添加到Storyboard出现IB Designables错误
Xcode 9:无法渲染和更新“VC”T..s.framework 的自动布局状态:需要为“TextFieldEffects.framework”移动代码签名