View in English

  • Apple Developer
    • Get Started

    Explore Get Started

    • Overview
    • Learn
    • Apple Developer Program

    Stay Updated

    • Latest News
    • Hello Developer
    • Platforms

    Explore Platforms

    • Apple Platforms
    • iOS
    • iPadOS
    • macOS
    • tvOS
    • visionOS
    • watchOS
    • App Store

    Featured

    • Design
    • Distribution
    • Games
    • Accessories
    • Web
    • Home
    • CarPlay
    • Technologies

    Explore Technologies

    • Overview
    • Xcode
    • Swift
    • SwiftUI

    Featured

    • Accessibility
    • App Intents
    • Apple Intelligence
    • Games
    • Machine Learning & AI
    • Security
    • Xcode Cloud
    • Community

    Explore Community

    • Overview
    • Meet with Apple events
    • Community-driven events
    • Developer Forums
    • Open Source

    Featured

    • WWDC
    • Swift Student Challenge
    • Developer Stories
    • App Store Awards
    • Apple Design Awards
    • Apple Developer Centers
    • Documentation

    Explore Documentation

    • Documentation Library
    • Technology Overviews
    • Sample Code
    • Human Interface Guidelines
    • Videos

    Release Notes

    • Featured Updates
    • iOS
    • iPadOS
    • macOS
    • watchOS
    • visionOS
    • tvOS
    • Xcode
    • Downloads

    Explore Downloads

    • All Downloads
    • Operating Systems
    • Applications
    • Design Resources

    Featured

    • Xcode
    • TestFlight
    • Fonts
    • SF Symbols
    • Icon Composer
    • Support

    Explore Support

    • Overview
    • Help Guides
    • Developer Forums
    • Feedback Assistant
    • Contact Us

    Featured

    • Account Help
    • App Review Guidelines
    • App Store Connect Help
    • Upcoming Requirements
    • Agreements and Guidelines
    • System Status
  • Quick Links

    • Events
    • News
    • Forums
    • Sample Code
    • Videos
 

Vidéos

Ouvrir le menu Fermer le menu
  • Collections
  • Toutes les vidéos
  • À propos

Plus de vidéos

  • À propos
  • Code
  • SF Symbols in UIKit and AppKit

    Learn how you can create colorized symbols with SF Symbols 3 and customize them to match the visual design of your app's interface. We'll take you through the latest UIKit and AppKit APIs for integrating colorized symbols, as well as best practices for implementation.

    To get the most out of this session, we recommend watching “Introducing SF Symbols” from WWDC19.

    Ressources

    • Download SF Symbols
    • Human Interface Guidelines: SF Symbols
      • Vidéo HD
      • Vidéo SD

    Vidéos connexes

    WWDC21

    • Create custom symbols
    • Explore the SF Symbols 3 app
    • SF Symbols in SwiftUI
    • What's new in UIKit
  • Rechercher dans cette vidéo…
    • 1:52 - Monochrome symbols

      // Play
      
      let playImage = UIImage(systemName: "play")
      
      playImageView.image = playImage 
      playImageView.tintColor = .systemBlue
    • 3:00 - Hierarchical symbols

      // Device image
      
      var image = NSImage(systemSymbolName: "ipad.landscape",
                          accessibilityDescription: "iPad")
      
      let config = NSImage.SymbolConfiguration(hierarchicalColor: .label)
      
      deviceView.image = image
      deviceView.symbolConfiguration = config
    • 4:13 - Setup button configurations

      // Initialize button configuration
      
      let speakerConfig = UIButtonConfiguration.plain
      speakerConfig.image = UIImage(systemName: "speaker.wave.2")
      
      let callConfig = UIButtonConfiguration.plain
      callConfig.image = UIImage(systemName: "phone")
      
      let deleteConfig = UIButtonConfiguration.plain
      deleteConfig.image = UIImage(systemName: "trash")
    • 4:40 - Image variants

      // Button container view
      
      actionsView.imageVariant = .none
    • 4:44 - Image variants

      // Button container view
      
      actionsView.imageVariant = .circle
    • 4:51 - Image variants

      // Button container view
      
      actionsView.imageVariant = .circle.fill
    • 5:09 - Speaker button color configuration

      // Speaker button color configuration
      
      let config = UIImage.SymbolConfiguration(paletteColors: [.tintColor, .systemGray2])
      
      speakerConfig.preferredSymbolConfigurationForImage = config
      speakerButton.configuration = speakerConfig
    • 5:40 - Call button color configuration

      // Call button color configuration
      
      let config = UIImage.SymbolConfiguration(paletteColors: [.white, .tintColor])
      
      callConfig.preferredSymbolConfigurationForImage = config
      callButton.configuration = callConfig
    • 5:56 - Delete button color configuration

      // Delete button color configuration
      
      let config = UIImage.SymbolConfiguration(paletteColors: [.white, .systemRed])
      
      deleteConfig.preferredSymbolConfigurationForImage = config
      deleteButton.configuration = deleteConfig
    • 6:10 - Colors matter

      // Colors matter!
      
      let config = UIImage.SymbolConfiguration(paletteColors: [.tintColor, .systemGray2])
      
      let config = UIImage.SymbolConfiguration(paletteColors: [.white, .tintColor])
      
      let config = UIImage.SymbolConfiguration(paletteColors: [.white, .systemRed])
    • 6:46 - Tint color

      view.backgroundColor = .tintColor
      label.textColor = .tintColor
      searchField.tokenBackgroundColor = .tintColor
      tabBarItem.badgeColor = .tintColor
    • 9:03 - Multicolor symbols

      // configure table view cell
      
      let image = UIImage(systemName: category.iconName)
      
      cell.imageView.image = image
    • 9:13 - Multicolor symbols

      // configure table view cell
      
      let image = UIImage(systemName: category.iconName)
      
      let config = UIImage.SymbolConfiguration.preferringMultiColor
      
      let tintColor = category.colorForIcon
      
      cell.imageView.image = image
      cell.imageView.preferredSymbolConfiguration = config
      cell.imageView.tintColor = tintColor
    • 9:58 - Multicolor symbols

      // configure table view cell
      
      let image = UIImage(systemName: category.iconName)
      
      let config = UIImage.SymbolConfiguration.preferringMultiColor
      
      let tintColor = category.colorForIcon
      
      cell.imageView.image = image
      cell.imageView.preferredSymbolConfiguration = config
      cell.imageView.tintColor = tintColor
    • 12:25 - Combining configurations

      // combined configuration
      
      let image = UIImage(systemImage: "ipad.and.iphone")
      headerView.image = image
    • 12:40 - Combining configurations

      // Combined configuration
      
      let image = UIImage(systemImage: "ipad.and.iphone")
      headerView.image = image
      
      let fontConfig = UIImage.SymbolConfiguration(pointSize: 60, scale: .large)
      let colorConfig = UIImage.SymbolConfiguration(hierarchicalColor: .systemBlue)
      let config = fontConfig.applying(colorConfig)
      
      headerView.preferredSymbolConfiguration = config
    • 13:20 - Symbols in attributed strings

      // Hotel amenities
      
      let amenitiesString = NSMutableAttributedString(...)
      
      if (room.amenities.contains(.tv)) {
          let config = UIImage.SymbolConfiguration(
                               hierarchicalColor: .systemGreen)
          let tvImage = UIImage(systemImage: "tv", 
                                withConfiguration: config)
      
          let attachment = NSTextAttachment(image: tvImage)
          let attachmentString = NSAttributedString(attachment: 
                                                     attachment)
          let tvString = attachmentString.mutableCopy()
          tvString.append(NSAttributedString(" TV, ")
      
          amenitiesString.append(tvString)
      }
    • 13:51 - Symbols in attributed strings

      // hotel amenities
      
      let amenitiesLabel = UILabel()
      
      amenitiesLabel.textColor = .systemGreen
      amenitiesLabel.font = UIFont.systemFont(ofSize: 25)
      
      amenitiesLabel.attributedString = amenitiesString

Developer Footer

  • Vidéos
  • WWDC21
  • SF Symbols in UIKit and AppKit
  • Open Menu Close Menu
    • iOS
    • iPadOS
    • macOS
    • tvOS
    • visionOS
    • watchOS
    • App Store
    Open Menu Close Menu
    • Swift
    • SwiftUI
    • Swift Playground
    • TestFlight
    • Xcode
    • Xcode Cloud
    • Icon Composer
    • SF Symbols
    Open Menu Close Menu
    • Accessibility
    • Accessories
    • Apple Intelligence
    • Audio & Video
    • Augmented Reality
    • Business
    • Design
    • Distribution
    • Education
    • Games
    • Health & Fitness
    • In-App Purchase
    • Localization
    • Maps & Location
    • Machine Learning & AI
    • Security
    • Safari & Web
    Open Menu Close Menu
    • Documentation
    • Downloads
    • Sample Code
    • Videos
    Open Menu Close Menu
    • Help Guides & Articles
    • Contact Us
    • Forums
    • Feedback & Bug Reporting
    • System Status
    Open Menu Close Menu
    • Apple Developer
    • App Store Connect
    • Certificates, IDs, & Profiles
    • Feedback Assistant
    Open Menu Close Menu
    • Apple Developer Program
    • Apple Developer Enterprise Program
    • App Store Small Business Program
    • MFi Program
    • Mini Apps Partner Program
    • News Partner Program
    • Video Partner Program
    • Security Bounty Program
    • Security Research Device Program
    Open Menu Close Menu
    • Meet with Apple
    • Apple Developer Centers
    • App Store Awards
    • Apple Design Awards
    • Apple Developer Academies
    • WWDC
    Read the latest news.
    Get the Apple Developer app.
    Copyright © 2026 Apple Inc. All rights reserved.
    Terms of Use Privacy Policy Agreements and Guidelines