Как использовать символы SF в iOS 12 и ниже?

Я обновляю иконки в моем приложении. После того, как я услышал, Apple выпустила иконку шрифта с именем SF Symbols с iOS 13 мне было интересно, могу ли я использовать их только в iOS 13 или можно ли использовать их и в более низких версиях iOS.

Если я хочу использовать их, должен ли я использовать запасной вариант для более старых версий?

11 ответов

Решение

Вы не можете использовать SFSymbols изначально в версиях iOS старше, чем iOS 13.

Однако, если вы заинтересованы в использовании графики, вы можете использовать приложение SFSymbols для экспорта SVG-версий иконки. Затем используйте графический инструмент для преобразования их в значки, которые можно импортировать в каталог ресурсов.

В соответствии с Руководством по интерфейсу пользователя вы не должны использовать новые значки в старых версиях iOS, хотя:

Вы можете использовать символы SF в приложениях, работающих в iOS 13 и более поздних версиях, watchOS 6 и более поздних версиях, а также в tvOS 13 и более поздних версиях. Чтобы просмотреть полный набор символов, загрузите приложение SF Symbols.

Я сделал инструменты, которые могут легко экспортировать sfsymbols в Xcode:

https://happycoding.app/

Вы можете открыть.svg использовать Figma. Затем выберите Regular-M и экспортируйте в формате PDF или PNG.

Работа вокруг в процессе

Мне не удалось найти решение, я сдался, но на самом деле я пошел довольно далеко в расследовании. Может быть, кто-то, кто повезет больше меня, сможет выяснить hpw, чтобы продолжить работу, которую я начал:

В документации Apple говорится, что для удобного просмотра всех новых символов iOS 13 SF вы можете загрузить приложение SF Symbols: https://developer.apple.com/design/human-interface-guidelines/sf-symbols/overview/

После установки вы можете пойти в Application > SF Symbols > showPackage content

Оттуда, под content > Resources мы можем найти интересный файл с именем SFSymbolsFallback.ttf

И если вы попытаетесь открыть этот файл на https://fontdrop.info/ вы увидите, что он содержит все глифы шрифтов, выпущенные в iOS 13 как SF Font, со связанными юникодами


Бинго? не так быстро...

Оттуда я попытался импортировать этот.ttf в свой проект в iOS 12, на XCode 10.2.1, но кажется, что он никогда не импортируется должным образом. Он не доступен в списке доступных шрифтов при вызове. UIFont.familyNames

Еще интереснее, если я пытаюсь импортировать этот шрифт в приложение Font Book, я получаю предупреждение о том, что он содержит дубликаты, что-то вроде конфликта с существующим шрифтом


Оттуда?

Я предполагаю, что есть другой шрифт, который препятствует установке SF Symbols, в Font Book и в Xcode.

Одним из решений может быть поиск конфликтующего в пакете XCode и удаление его (это может быть Symbols шрифт или San Francisco что вызывает проблемы ИДК)

Если кто-то хочет продолжить расследование..

Надеюсь, что это может помочь кому-то!

Этот набор значков основан на символах SF https://framework7.io/icons/

В SF Symbols 3.1 выберите «Правка» > «Копировать изображение как...». Вы можете выбрать PNG/размер точки/масштаб в пикселях и вставить в окно предварительного просмотра и т. д.

Вы можете загрузить в свой проект новый шрифт ios 13 sf-pro-round Round. Затем включите этот шрифт в своей этикетке.

Откройте символы sf, щелкните нужный символ, cmd+c, перейдите в свой проект, щелкните ярлык cmd+v. Запускаем проект, и должен быть значок

ура,

SF Symbols - это система, поддерживаемая только на iOS 13 или более поздней версии - их нельзя использовать на iOS 12 или ниже. Вам нужно будет использовать запасные варианты для этих старых операционных систем.

См. Рекомендации по интерфейсу пользователя

Из Руководства по интерфейсу человека

Вы можете использовать символы SF в приложениях, работающих в iOS 13 и более поздних версиях, watchOS 6 и более поздних версиях, а также в tvOS 13 и более поздних версиях. Чтобы просмотреть полный набор символов, загрузите приложение SF Symbols.

1. Импортируйте шрифт:

Откройте приложение Fonts, найдите шрифт SF Pro Rounded, щелкните правой кнопкой мыши нужный вариант (например, Light) и нажмите "Показать в Finder". Перетащите этот файл (например, SF-Pro-Rounded-Light.otf) в свой проект XCode и отметьте "Копировать при необходимости".

2. Выберите шрифт:

Выберите свой UILabel или UIButton, установите для заголовка значение "Приписанный" (это важно) и выберите только что скопированный шрифт (например, SF Pro Rounded Light).

3. Установите символ:

Найдите нужный значок в символах SF, выберите его, нажмите CMD+C, чтобы скопировать, переключитесь обратно на XCode, щелкните текстовую часть заголовка UILabel или UIButton и нажмите CMD+V для вставки.

Огромное спасибо Дэйву ван Вейку за решение!

Кажется, есть новый способ сделать это.

Экспортируйте файл SVG из приложения SF Symbols, используя File -> Export Custom Symbol Template.

Затем создайте Symbol Image Set в ваших активах в Xcode и перетащите в него SVG.

Другие вопросы по тегам