1

我决定在 swift 中为文本字段编写扩展名,并向 UITextField 添加一些功能,例如添加标签、标题、标题方向、自定义颜色、标题自定义字体等。

左侧是 RTL 语言方向编号(例如电话号码),但右侧是标题方向,因此我强制将方向文本字段和标签分开。

我对 IBInspectable 的问题,因为我想为标签文本字段(标题)添加方向和自定义字体,但 IBInspectable 不支持 NSTextDirection、UIFont 的此功能,并且只支持少数想法:

  • 诠释
  • CGF浮动
  • 双倍的
  • 细绳
  • 布尔
  • CG点
  • CGS尺寸
  • CG矩形
  • UIColor
  • UIImage

而且我不想在 IBInspectable 中使用布尔值作为方向。

你对这个主题有什么想法吗?

感谢您的帮助,对于英语不好我深表歉意。

4

2 回答 2

1

UIFontnameand组成size,所以我们可以使用nameandsize来创建UIFont

@IBInspectable var fontName: String = "HelveticaNeue-Medium" {
    didSet {
        label.font = UIFont.init(name: fontName, size: fontSize)
    }
}

@IBInspectable var fontSize: CGFloat = 12 {
    didSet {
        label.font = UIFont.init(name: fontName, size: fontSize)
    }
}

在此处输入图像描述

在此处输入图像描述

于 2020-08-13T15:49:02.067 回答
0

我想你可以破解它的一种方法是:

private var font: UIFont!
@IBInspectable fontStr: String! {
    didSet{
        self.font = UIFont(name: fontStr, size: 15.0)
    }
}

也就是说,最好不要这样做。这应该通过代码而不是界面生成器来完成。

于 2017-02-13T05:13:25.060 回答