2017-06-15 32 views
0

我已经通过故事板创建一个UILabel,但现在我想以编程方式创建另一个的第一个如何复制样式的UILabel斯威夫特3编程

我怎么能复制相同的属性或创建一个UILabel以编程方式使用其他现有UILabel的相同样式(字体颜色,背景,大小,中心,粗体...)。

+0

Cmd + C键,Cmd + V键...你也可以创建的UILabel – agscastaneda

回答

1

您可以创建UILabel的自定义子类,它具有您想要的属性,然后创建标签时只需将其类设置为自定义类。

class CustomLabel: UILabel { 
    required init?(code aDecoder: NSCoder) { 
     super.init(code: aDecoder) 
     //your code goes here 
     self.textColor = UIColor.red 
     self.alpha = 0.5 
    } 
} 

所以,只需在您的项目中添加一个swift文件并将上面的代码添加到它。在那里你可以添加你的属性。

我希望这有助于

2

您可以在UILabel创建扩展和添加一个方法来风格的标签。

extension UILabel { 
    func applyStyle() { 
     self.textColor = .black 
     self.textAlignment = .center 
     self.font = UIFont(name: "Helvetica", size: 14) 
    } 
} 

现在给你打电话myLabel.applyStyle()使用相同的属性为不同的标签

+0

自己的自定义类和子类这是一个好主意,但我需要从另一个现有的UILabel“复制”整个样式。 – user2336714

+0

您可以将所有样式和配置部分保留在此扩展方法中,并从要应用此样式的所有标签中调用applyStyle。 – suhit