탭이 거의없는 TabBarController가 있습니다. 각 탭에는 TableView와 셀이있는 ViewController가있는 NavigationController가 있습니다. 사용자가 셀을 누르면 - 그는 DetailedViewController를 얻습니다.TabBarController에서 ViewController를 여는 푸시 알림 처리
내가 원하는 것은 - 내 앱이 푸시 알림을 받으면 DetailedViewController를 여는 것입니다.
내가 OneSignal과 AppDelegate에 내 didFinishLaunchingWithOptions를 사용처럼 보이는 (당신은 내가 DetailedViewController에 전달하고자하는 항목 ID를 가지고 참조)이 코드는 어떤 이유로 작동하지 않습니다
OneSignal.initWithLaunchOptions(
launchOptions,
appId: API_KEY,
handleNotificationAction : {
(result) in
if additionalData!["itemID"] != nil {
let itemID = Int(additionalData!["itemID"] as! String)
if(itemID! > 0) {
if(self.window?.rootViewController?.presentedViewController != nil) {
self.window?.rootViewController?.presentedViewController?.dismiss(animated: true, completion: {
let storyboard = UIStoryboard(name: "Main", bundle: nil)
let tabBarController = storyboard.instantiateViewController(withIdentifier: "MainTabBarController") as! UITabBarController
tabBarController.selectedIndex = 1
self.window?.rootViewController?.present(tabBarController, animated: true, completion: nil)
})
}
}
}
}
}
)
- - I 의 ViewController로 원하는 탭으로하지 않습니다 내가 바로 내가 FINA 때
- TabBarController 에서 DetailedViewController을 여는 방법을 모르는
- 필요 lly가 DetailedViewController에 도착할 것입니다. 다시 버튼을 누르면 어떻게됩니까? 항목 목록이있는 ViewController가 없었습니다.이 경우 어디에서 탐색할까요?
- 메모리를 잘 사용할 코드입니까?
'rootViewController'를 삭제해야하는 이유가 있습니까? 단순히 원하는 탭 컨트롤러를 표시하지 않는 것이 어떻습니까? 그런 식으로, 적어도 당신의 뒤로 버튼이 작동합니다. (일단 다른 모든 것이 작동하면) –
앱이 실행 중이고 알림을 받으면 - 내가 제시 한 ViewController를 닫지 않으면 어떻게 될까요? 더 많은 기억을 먹으면서 새로운 것을 열 것입니다 - 틀렸어? – moonvader
rootViewController를 원하는 View Controller로 변경하십시오. – Mannopson