【发布时间】:2020-08-26 16:16:28
【问题描述】:
如果我更改background color 并运行该应用程序,颜色会正常工作,但只要我添加subViews (如tableView 或containerView),背景的仍然可见部分就会变为白色。
我尝试过:
- 以编程方式设置颜色。还是白的。
- 要在superView 上添加另一个UIView,请将subViews 添加到其中,并改为在UIView 上更改color。还是白的。
- 使用与上述相同的方法,更改superView 颜色并将UIView color 设置为清除。还是白的。
- 将 alpha value 更改为 0,但这也会使 subViews 不可见。
这是层次结构:
从来没有遇到过这个问题,我不明白...
【问题讨论】:
-
如果您命名嵌套视图而不是必须仅调用“视图”的视图会更好
-
我建议删除嵌套视图或将其颜色设置为清除所有内容,然后将颜色设置为仅根视图
-
尝试删除您的子视图,然后通过情节提要设置颜色,并在运行前查看更改是否反映在视图控制器中,如果是,则运行代码 n 检查。如果仍然给出白色,则再次以编程方式制作并检查。例如:self.view.backgroundColor = UIColor.red
-
如果它是一个表格视图,您是否尝试过零背景视图?即
tableview.backgroundView = nil -
我确实尝试将它设置为在根视图上使用颜色清除,但仍然是白色。我尝试删除 subView 并设置根颜色,但仍然是白色。我也以编程方式尝试过。 tableView 无论如何都不会覆盖整个背景,所以这并不重要。
标签: ios swift uitableview background-color hierarchy