В недавнем проекте я реализовал поиск в центре внимания, и все работает отлично (я использовал UINavigationController).Теперь я перерабатываю поиск в центре внимания для другого проекта, который не содержит UINavigationController, а только два UIViewController.Также в этом случае все работает нормально, кроме перенаправления на контроллер подробного просмотра, когда конкретный элемент нажимается в поиске прожектора.Я обнаружил, что проблема в этом методе, и это потому, что я не использую UINavigationController.Итак, мой вопрос, как я могу изменить этот код для работы только с двумя моими UIViewController?
func application(_ application: UIApplication, continue userActivity: NSUserActivity, restorationHandler: @escaping ([Any]?) -> Swift.Void) -> Bool {
let navController = self.window!.rootViewController as! UINavigationController
if let actID = userActivity.userInfo!["kCSSearchableItemActivityIdentifier"] as? String {
let ricette = DataManager.shared.arra.filter { $0.id.uuidString == actID }
if let ricetta = ricette.first {
debugPrint("Abbiamo la ricetta grazie all'ID")
if let listController = navController.topViewController as? ListController {
if let posizione = DataManager.shared.arra.index(of: ricetta) {
listController.showDetailFromSpotlightSearch(posizione)
}
} else if let ricettaController = navController.visibleViewController as? RicettaController {
ricettaController.ricetta = ricetta
ricettaController.aggiornaInterfaccia()
}
} else { debugPrint("errore ID") }
} else { debugPrint("errore ID") }
return true
}