Используя Xcode/Swift, как я могу использовать символ SF в качестве значка панели вкладок в активах? Поле ресурса не принимает файл.svg

Я не могу использовать символ SF в качестве ресурса для значка панели вкладок.

Я пытался использовать графический интерфейс для перетаскивания файла. Я не уверен, как добавить это программно.

Я ожидал, что смогу перетаскивать, но он не примет файл.svg. Я добавляю новый набор символов, но он не работает как актив значка панели вкладок.

3 ответа

Если вы используете новую бета-версию Xcode 11, новые символы SF уже включены, и вам не нужно импортировать файлы.svg.

Откройте файл раскадровки, нажмите на значок панели вкладок (а не на контроллере панели вкладок).

Теперь откройте инспектор атрибутов с правой стороны и откройте поле со списком в "Bar Item" -> "Image". Теперь в этом списке будут символы SF, как на скриншоте ниже.

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

Для SwiftU я использую этот фрагмент:

.tabItem {
    VStack {
        Image(systemName: "gear")
            .font(.title)
        Text("Settings")
    }
}

Следующий код работает для установки системного значка для UITabBarItem с UIKit и Xcode 11 или 12 через Swift:

      var yourTabViewController: YourTabViewController?
let iconConfig = UIImage.SymbolConfiguration(scale: .large)
let gearIcon = UIImage(systemName: "gearshape.fill", withConfiguration: iconConfig)
let settingsTabBarItem = UITabBarItem(title: "Settings", image: gearIcon, tag: 0)
yourTabViewController = storyboard.instantiateViewController(withIdentifier: YourTabViewController.identifier) as? YourTabViewController
yourTabViewController?.tabBarItem = settingsTabBarItem

Ссылка, которая мне помогла

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