gpt4 book ai didi

ios - UITableViewController 背景颜色设置为默认(白色),但显示为黑色

转载 作者:行者123 更新时间:2023-11-29 12:39:03 24 4
gpt4 key购买 nike

在我的 Storyboard 中,我将表格 View Controller 的背景色设置为“默认”设置,在界面生成器中显示为白色。但是,当我运行该应用程序时,表格 View Controller 的背景颜色为黑色。

enter image description here

最佳答案

这似乎是 Apple 代码中的错误。

重现步骤:

  1. 创建一个全新的 Xcode 项目。
  2. 将 TableView Controller 拖放到 Storyboard 上,并使其成为初始 View Controller 。
  3. 选择 TableView Controller 内的 TableView 并将其背景颜色从“[white] Default”更改为“[white] Default”(即重新选择列表中的顶部选项)。
  4. 运行应用。
  5. 即使 Interface Builder 将背景色显示为“[白色] 默认值”,但运行时的实际背景色是黑色。它显然应该是白色的,因为这是 Interface Builder 报告的默认颜色。

如果您查看 xml 文件,您会发现一些有趣的东西。将一个全新的 TableView Controller 拖放到 Storyboard 上将显示 Storyboard 中选择的“[white] Default”选项,但是 xml 将具有背景颜色条目:<color key="backgroundColor" white="1" alpha="1" colorSpace="calibratedWhite"/> .这是很奇怪的,因为通常当某些东西被设置为其默认值时,它将被排除在 xml 文件之外。

在 Interface Builder 中,如果您再次重新选择“[white] Default”选项,您会注意到透明 View (例如部分标题)后面的背景颜色会出现轻微变化。这是因为即使“[white] Default”选项显示为已选中,它实际上已经删除了 <color>。 xml 文件中的条目。通常,这应该为 View 选择默认背景颜色。在这种情况下,它选择黑色。 Interface Builder UI 现在不再与 xml 文件同步。

在 Interface Builder 中,如果您现在选择“[white] White Color”选项,界面将显示“[white] Default”,并且一切都会恢复到您最初将 TableView Controller 放在 Storyboard。

这意味着当黑色和白色是选定的选项时,Interface Builder 显示“[white] Default”。知道哪个被选中的唯一方法是在运行时,或者通过注意 Interface Builder 中透明 View 的细微差别。

因此,为了解决这个问题,背景颜色设置中不要选择“[white] Default”选项,选择“[white] White Color”选项。

总结

选择这个:

enter image description here

... 会显示这个:

enter image description here

...但是 TableView 将如下所示:(错误行为)

enter image description here

另一方面,选择这个:

enter image description here

... 会显示这个:

enter image description here

... TableView 将如下所示:(正确行为)

enter image description here

关于ios - UITableViewController 背景颜色设置为默认(白色),但显示为黑色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25519424/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com