ios – 所有UILabel的默认文本颜色

我想为我的应用中的所有UILabel设置文本颜色.我找到了这个:
UILabel.appearance().textColor = UIColor.red

这有效,但是当我想在其故事板中为特定标签设置其他颜色时,它无法完成 – 所有标签仍然是红色的.

是否可以通过在故事板中设置它来为所有UILabel定义文本颜色,然后在故事板(而不是代码)中为某些UILabel ALSO更改它?或者使用Appearance API在代码中设置认颜色,并为storyboard中的某些标签更改它?

解决方法

使用CustomLabel.swift标记的子类.您可以使用名为txtColor的IBDesignable属性设置文本颜色

下面是代码工作示例

import UIKit

    @IBDesignable  class CustomLabel: UILabel {

        @IBInspectable var txtColor: UIColor = UIColor.grayColor() {
            didSet {
                self.textColor = txtColor
            }
        }

        func setup() {
           self.textColor = txtColor
        }

        override func awakeFromNib() {
            setup()
        }

        override func prepareForInterfaceBuilder() {
            setup()
        }

    }

相关文章

UITabBarController 是 iOS 中用于管理和显示选项卡界面的一...
UITableView的重用机制避免了频繁创建和销毁单元格的开销,使...
Objective-C中,类的实例变量(instance variables)和属性(...
从内存管理的角度来看,block可以作为方法的传入参数是因为b...
WKWebView 是 iOS 开发中用于显示网页内容的组件,它是在 iO...
OC中常用的多线程编程技术: 1. NSThread NSThread是Objecti...