在 Xcode 中更改对象颜色
Posted
技术标签:
【中文标题】在 Xcode 中更改对象颜色【英文标题】:Change object color in Xcode 【发布时间】:2014-08-15 19:33:18 【问题描述】:我是 Xcode 的新手(Mac 开发,不是 ios),出于某种原因,我什至不知道如何更改任何对象的颜色(文本、背景或其他任何东西)。每个站点似乎都说要单击对象,转到属性检查器,所有这些选项都在“查看”下。但是,在我的 Xcode (5.1.1) 中,它在“视图”下显示的只是标签、对焦环、绘图和自动调整大小。我错过了什么明显的东西吗?
【问题讨论】:
你想改变什么对象的颜色?对该对象进行快速谷歌搜索+“更改背景颜色”可能会有所帮助。 标签和按钮。它用于背景和文本颜色。另外,我肯定用谷歌搜索了它。它提出了我所说的,在属性检查器的视图部分下。只是,它不存在。 @zigzaugg Mac 窗口往往具有视图层次结构。从画布中选择您想要的对象可能很烦人。你得到的是对象的封闭视图,而不是你想要的对象。使用画布上方的跳转栏来访问您想要的对象。 我尝试了跳转栏中的所有对象层次结构,但没有一个具有我要查找的内容。我相信下面选择的答案解释了原因。不过谢谢! 【参考方案1】:在 OS X 上,NSView
没有内在的 backgroundColor
属性。因此,您不能从 Interface Builder 设置视图的颜色。您必须创建一个 NSView 子类并覆盖 -drawRect:
或 -updateLayer
以使其成为您想要的颜色。即使那样,该颜色也不会出现在 Interface Builder 中。 (这在 Xcode 6 中发生了变化,在撰写本文时仍处于测试阶段。)
这有点烦人吗?是的。但事实就是这样。
至于更改对象的文本,您应该能够从属性检查器中进行,但前提是它已经具有文本(即文本字段、文本视图或按钮)。任意自定义视图没有文本,所以不能在 Interface Builder 中设置。
【讨论】:
哇,这太荒谬了。很高兴听到他们计划修复它!谢谢你让我知道。我的意思是文字颜色,我了解如何更改文字。 嘿,BJ...我记得没有人错过 NSView,直到 UIView 出现并且可以实际做事...【参考方案2】:您应该能够轻松地以编程方式设置您想要的任何 UI 元素的背景颜色。
[viewObject setBackgroundColor:[UIColor greenColor]];
至于为 OSX 编辑 xib,我不确定。我只做过iOS开发。
【讨论】:
我正在查看 MainMenu.xib。是的,实用程序是开放的。正如我在帖子中所说,我在属性检查器中。只是背景和文字颜色不像大家说的那样存在。 也许我不知道我在做什么。我只是按照this 的指示进行操作。 this 是教程的一部分,它解释了使用 .xib 的所有内容。有错吗? OP 要求 OS X,而不是 IOS。 抱歉,我忘了你是为 Mac 开发的。 XCode 不使用故事板进行 Mac 开发吗?代码至少应该相似。 但是没有编码部分有没有办法做到这一点?我对此没有任何问题,它只是改变大量颜色而不用编码会快得多。据我所知,它不使用故事板。同样,我今天才开始使用 XCode。以上是关于在 Xcode 中更改对象颜色的主要内容,如果未能解决你的问题,请参考以下文章