UILabel 颜色和字体大小从 XIB 更改

Posted

技术标签:

【中文标题】UILabel 颜色和字体大小从 XIB 更改【英文标题】:UILabel color and font size changes from the XIB 【发布时间】:2014-06-23 16:01:50 【问题描述】:

我正在开发的应用程序有一些问题。

以前它工作得很好,但现在我注意到我的 XIB 中的许多 UILabel 都重置了字体和颜色。

例如,如果我在我的 XIB 中设置白色或红色,当我运行我的应用程序时它会显示为黑色。

如果我以编程方式设置颜色,它会正常工作。但这意味着我必须为我的 XIB 文件中的所有标签重置颜色...

正如我所说,它过去工作得很好...我将一个 XIB 文件与使用 SVN 的旧版本进行了比较,它是同一个文件,但标签仍然以改变的颜色出现...

您对如何解决这个问题有任何想法吗?

注意:我使用的是 Xcode 5.1.1,并且该错误仅在我使用 ios 5 的设备上进行测试时才会出现。

【问题讨论】:

你能在你的代码中找出错误可能来自哪里并显示出来吗? 我会尝试比较 SVN 的版本,直到找到不同之处,但这可能需要一些时间。如果我找到了为什么我会在这里发布它的原因。在那之前,如果有人有一些线索...... 【参考方案1】:

请检查您是否在某处设置了外观。

[UILabel appearance] setBackgroundColoer:

最好以编程方式设置你的 UI 组件外观属性

【讨论】:

正如我所说,我知道它会起作用,但由于它过去可以正常工作,但现在已经不行了,我想知道是否有其他方法可以解决它。这是一个有 50 多个 xib 的项目,我不想仅仅通过编程来花费几个小时。【参考方案2】:

发现有什么问题...似乎另一个开发人员在应用程序中编写了此代码:

[[UILabel appearanceWhenContainedIn:[UISearchBar class], nil] setTextColor:[UIColor blackColor]];
[[UILabel appearanceWhenContainedIn:[UISearchBar class], nil] setFont:[UIFont fontWithName:@"HelveticaNeue-Italic" size:14]];

而且它在 iOS5 上表现不佳……但它解决了我的问题。

现在我必须找到一种正确的方法来更改 UISearchBar 中占位符的颜色和字体。

【讨论】:

以上是关于UILabel 颜色和字体大小从 XIB 更改的主要内容,如果未能解决你的问题,请参考以下文章

使用界面生成器和 XIB,带有不同颜色文本的 UIlabel

具有不同字体大小和颜色的UILabel文本[重复]

如何为 UILabel 字体更改设置动画?

更改 UILabel 的大小会更改其字体名称

字体更改时自动uiLabel和uiTableViewCell调整大小的iphone代码?

如何在不更改字体本身的情况下更改 uilabel 的字体大小?