OGeek|极客世界-中国程序员成长平台

标题: ios - 如何删除出现在其他选项卡上的白色顶部空间(UITabBarController) [打印本页]

作者: 菜鸟教程小白    时间: 2022-12-11 18:46
标题: ios - 如何删除出现在其他选项卡上的白色顶部空间(UITabBarController)

我正在使用 Mono 开发 Xamarin Studio,但您可以使用 Obj-C 或 Swift 进行响应,我不介意。 (请不要介意屏幕截图上的图标、设计、翻译等,这是 WIP)

我有一个无法解决的奇怪问题:

在UITabBarController中的UIView的顶部栏下出现一个白色的空白区域,起初我以为是启用了“调整 ScrollView 插图”选项,但事实并非如此。我还尝试删除我的 UIWebView 并尝试使用标签,同样的问题。

空白仅出现在我的 UITabBarController 的“其他”部分中的“选项卡式” View 上(当屏幕太小时)。您可以在 iPad 上的屏幕截图中看到空白不在这里,但在所有其他设备(iPhone、iPhone plus)上都会出现!

如果设备不是 iPad,我可以设置一个负面的顶部约束,但它不是删除它的正确方法...

你可以找到(按顺序)的截图:

StoryBoard View

The white space

Top Constraint on my WebView

Storyboard structure

No whitespace on iPad

ViewController parameters



Best Answer-推荐答案


从视觉上看,空白区域正是导航栏,这是一个赠品,在调整这些栏时会出现问题。

您的布局中存在矛盾,这可能是问题的根源。您为 map View 选择了“延伸边缘”,但 map View 的顶部被限制在顶部布局指南中。顶部布局指南位于导航栏的底部,因此,如果某些东西正在调整插入以使其位于栏下方,并且知道栏的高度并假设它在栏下方,那么就会出现这种情况。

这并不能解释为什么当它包含在标签栏的初始 View Controller 中时它看起来是正确的,但是当它从更多弹出窗口中出现时是可能的,它被添加到 View 层次结构如此之快以至于它不知道确切的顶部布局指南或顶部栏的位置,因此会导致故障,而在选项卡栏 Controller 选项卡中,它会在多个布局 channel 之一上进行调整。

关于ios - 如何删除出现在其他选项卡上的白色顶部空间(UITabBarController),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41938756/






欢迎光临 OGeek|极客世界-中国程序员成长平台 (http://ogeek.cn/) Powered by Discuz! X3.4