我正在尝试设置一个布局,其中 map 放置在 SceneView 的顶部。应用构建时,设置会闪烁一秒钟,然后 SceneView 占据整个屏幕,完全隐藏其他两个 View 。
在左侧菜单上移动 SceneView 并将其移回后,文本开始出现,但不是黑色背景。
(我已经为场景 View 设置了占据整个屏幕的约束,并且在 map 上也设置了一些约束(右侧和底部)。
为什么它不起作用?
编辑:在我删除 View 并将其重新添加后它开始工作,但不知道为什么。 @El Tomato 说 SceneViews 总是与其他 View 重叠。这是真的吗(即不小心让它工作,我是在利用错误)吗?
Best Answer-推荐答案 strong>
这是可行的。我目前正在使用我正在使用的应用程序执行此操作,但不同之处在于我没有在界面构建器中设置 ARSceneView,而是我以编程方式添加它以适应整个屏幕。我有一些通过界面构建器添加的按钮,我现在添加了一个带有背景的标签,以确保它的工作方式与您想要的方式相似。
我会发布一些图片:
在这里,我只是在堆栈 View 中拥有带有一些(外观不好的按钮)的 View Controller 以及带有红色背景的标签。在我的 ViewDidAppear 函数中添加了 ARSceneView 并占据了整个帧。
此图片来自应用程序执行时的屏幕(调试 UI)。如您所见,带有背景的标签以及我添加的按钮都显示出来了。
我还显示了 2 个按钮(白色和红色圆圈),这些按钮是通过编程方式添加的,并被带到了前面。
我的建议是尝试以编程方式添加 ARSceneView,否则可能无法正常工作。或者您可以尝试输出所有 View 并使用bringSubviewToFront 将 map View 和标签置于最前面。
关于ios - Swift:在 SceneView 之上设置 View 不起作用,我们在Stack Overflow上找到一个类似的问题:
https://stackoverflow.com/questions/45558311/
|