我有一个带有一些视图控制器的选项卡栏,并且其中一个控制器包含一个TableView。我的问题是它有90%的时间显示为黑色。可能是因为我认为它与约束条件,尺寸有关,因为如果我触摸约束条件,尺寸,框架原点,有时它不是黑色的。
避免黑屏,并且在适当位置以良好的尺寸很好地显示表格视图。这非常令人沮丧,因为除了包含tableview的视图之外,其他所有视图控制器都在其他4个视图控制器上工作。
viewControlelr在带有约束的模拟器上(无论我所做的更改如何,它都不会正确显示。按钮也会消失,标签也会消失)。
我尝试了这张票中的解决方案,但没有成功:
self.definesPresentationContext = true
(我想我正设法找到解决方案,在tabBar之后没有添加很多导航控制器,也没有更改标签栏方法本身)
有什么建议吗?
您应该对选项卡栏的每个视图控制器使用navigationController,因为它是情节提要中的错误,直到今天仍未解决
1 /在tabbarviewcontroller的每个视图中将line self.definesPresentationContext = true放置在行中>>
2 / tabBarViewController的每个视图的Editor / Embed / NavigationController
3 /删除TabBarViewController的所有viewController的每个导航控制器的“ Show Navigation Bar”
4 /代替
let vc = self.tabBarController!.viewControllers![1] as! YourViewController
放入此行:
let nc = self.tabBarController!.viewControllers![1] as! UINavigationController let vc: YourViewController = nc.viewControllers[0] as! YourViewController
5 /解决所有内容问题(在情节提要中以红色和黄色显示)
6 /在模拟器或设备上编译之前删除应用程序
7 /编译前,请进行彻底清理(Cmd +选项+ Shift + k)
8 /可选:在某些情况下,关闭XCode,然后重新启动它