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
 

Vídeos

Abrir menu Fechar menu
  • Coleções
  • Todos os vídeos
  • Sobre

Mais vídeos

  • Sobre
  • Código
  • Discover search suggestions for Apple TV

    Searching your tvOS app just got even better. Get ready to explore the new simplified search interface and learn how to integrate it into your app with UISearchController. Support your global audience with the addition of new international keyboards and languages. Discover how to add search suggestions to your interface and update results with suggestions on the fly. And we'll share some of our favorite tips for adding a great search experience to Apple TV.

    Recursos

    • UISearchController
    • Human Interface Guidelines: Designing for tvOS
      • Vídeo HD
      • Vídeo SD
  • Buscar neste vídeo...
    • 1:40 - SearchViewController init

      private let appData: AppData
      
      init(appData: AppData) {
          self.appData = appData
          
          super.init(nibName: nil, bundle: nil)
      }
      
      required init?(coder: NSCoder) {
          fatalError("init(coder:) has not been implemented")
      }
    • 1:51 - Search Tab Bar Item

      // use the system standard search tab bar item
      tabBarItem = UITabBarItem(tabBarSystemItem: UITabBarItem.SystemItem.search, tag: 0)
    • 2:05 - SearchController and SearchContainerViewController Definition

      private let searchController: UISearchController
      private let searchContainerViewController: UISearchContainerViewController
    • 2:11 - SearchController and SearchContainerViewController Initialization

      self.searchController = UISearchController(searchResultsController: self.searchResultsController)
      self.searchContainerViewController = UISearchContainerViewController(searchController: searchController)
    • 2:16 - viewDidLoad - Add Child View Controller

      override func viewDidLoad() {
          addChild(searchContainerViewController)
          
          searchContainerViewController.view.frame = view.bounds
          view.addSubview(searchContainerViewController.view)
          searchContainerViewController.didMove(toParent: self)
      }
    • 3:17 - Set searchControllerObservedScrollView

      // scroll search controller allong with results collection view
      searchController.searchControllerObservedScrollView = searchResultsController.collectionView
    • 3:43 - Assign searchResultsUpdater

      searchController.searchResultsUpdater = self
    • 4:00 - Implement updateSearchResults

      func updateSearchResults(for searchController: UISearchController) {
          if let searchText = searchController.searchBar.text {
              // get search results for 'searchText' from data source
              let (results, _) = appData.searchResults(seachTerm: searchText, includePhotos: true, includeVideos: true)
              
              searchResultsController.items = results
          } else {
              // no search text, show unfiltered results
              searchResultsController.items = appData.allEntries
          }
      }
    • 4:16 - Create Instance of SearchViewController

      let searchViewController =  SearchViewController(appData: appData)
    • 5:30 - UISearchSuggestionItem Example

      let suggestion1 = UISearchSuggestionItem(localizedSuggestion: "Result1", localizedDescription: "Result1", iconImage: nil)
      let suggestion2 = UISearchSuggestionItem(localizedSuggestion: "Result2", localizedDescription: "Result2", iconImage: nil)
      
      searchController.searchSuggestions = [suggestion1, suggestion 2]
    • 7:05 - Implement UISearchSuggestion Properties

      var localizedSuggestion: String? {
          return self.name
      }
      
      var iconImage: UIImage? {
          return self.isVideo ? UIImage(systemName: "video") : UIImage(systemName: "photo")
      }
    • 7:20 - Implement Accessibility Description

      var localizedDescription: String? {
          if (self.isVideo) {
              return String.localizedStringWithFormat(NSLocalizedString("%@ - Video", comment: ""), self.name)
          }
          return String.localizedStringWithFormat(NSLocalizedString("%@ - Photo", comment: ""), self.name)
      }
    • 9:01 - Add new UISearchResultsUpdating

      func updateSearchResults(for searchController: UISearchController, selecting searchSuggestion: UISearchSuggestion) {
          if let searchText = searchController.searchBar.text {
              var includePhotos = true;
              var includeVideos = true;
              
              
          }
      }
    • 9:13 - Inspect Suggestion

      // check if the suggestion is for a photo or video
      if let suggestedEntry = searchSuggestion as? SuggestedEntry {
          includeVideos = suggestedEntry.isVideo
          includePhotos = !includeVideos
      }
    • 9:21 - Filter Results

      // filter the results by to include photos, videos, or both
      let (results, _) = appData.searchResults(seachTerm: searchText, includePhotos: includePhotos, includeVideos: includeVideos)
                  
      searchResultsController.items = results

Developer Footer

  • Vídeos
  • WWDC20
  • Discover search suggestions for Apple TV
  • 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