Существует много способов использования значков шрифтов в приложении для iOS.
Вы можете отказаться от любого из них в соответствии с вашим пониманием и комфортом.
Подход 1:
Написание собственной логики
- Добавьте потрясающие файлы шрифтов в исходный код компиляции и убедитесь, что они добавлены правильно (см. Прикрепленные изображения)
- Сохранить строку Unicode для любого шрифта-удивительного значка (В коде примера я беру ссылку на значок закрытия. Его шрифт классного класса и текст Unicode имеют значения
fa-close
и f00d
соответственно ( См. Пример кода ). В моем случае у меня есть класс, в котором у меня есть вся строка значков шрифта awesome, и другой класс, который принимает строку класса шрифта awesome и возвращает соответствующую строку Unicode.
- Создайте приписанную строку с этой строкой Unicode и установите для нее свойство attributetedText ( См. Пример кода ниже ).
Вы можете найти нужный вам шрифт, потрясающую строку и Unicode здесь
![Your font awesome file looks like something similar to this](https://i.stack.imgur.com/s0hqq.png)
![Make sure these font awesome file added to your build-phase source](https://i.stack.imgur.com/8r5r6.png)
Пример кода
Step1
В этом примере я создал расширение, которое возвращает строку Unicode.
extension String {
func fontAwesomeString(name: String) -> String {
switch name {
case "fa-close":
return "\u{f00d}"
default: // manage exhaustive case accordingly
}
}
}
Step2
Вызовите вышеуказанный метод, передав соответствующий шрифт соответствующего шрифта.
let iconUnicodeText = String.fontAwesomeString(name: "fa-close")
let iconAttributed = NSMutableAttributedString(string: iconUnicodeText)
self.iConLabel.attributedText = iconAttributed // iConLabel is a control type of UIlabel.
Или, если вы не хотите организовывать свой исходный код, вы можете напрямую создать атрибутивную строку с помощью Unicode и установить для атрибута attributetedText.
Примечание: Возможно, вам потребуется внести изменения в приведенный выше фрагмент кода. Как я написал для Swift 4.0
Подход 2:
Использование какао-бобов
Как только вы установили библиотеку pod, вы вызываете соответствующие методы, показанные в примере, как показано ниже
yourButton.titleLabel?.font = UIFont.fontAwesome(ofSize: 30, style: .brands)
yourButton.setTitle(String.fontAwesomeIcon(name:. gitgub), for : .normal) // you may change icon type with your desired one