- (void)application:(UIApplication *)application performActionForShortcutItem:(UIApplicationShortcutItem *)shortcutItem completionHandler:(void (^)(BOOL))completionHandler {
MainView *Main=[[MainView alloc]initWithNibName:@"MainView" bundle:nil];
// This module to collect metrics for Notification received, Notification displayed
UINavigationController *NavBar=[[UINavigationController alloc] initWithRootViewController:Main];
// react to shortcut item selections
NSLog(@"A shortcut item was pressed. It was %@.", shortcutItem.localizedTitle);
if([(NSString *)shortcutItem.localizedTitle isEqualToString:@"Store"])
{
PurchaseView *purchaseViewController = [[PurchaseView alloc] initWithNibName:@"PurchaseView" bundle:nil];
[NavBar pushViewController:purchaseViewController animated:YES];
}
}
Я вхожу в если ([(NSString *) shortcutItem.localizedTitle isEqualToString: @ "Магазин"]) цикл и я вижу код выполнения. Но PurchaseView.xib никогда не загружается. У меня есть аналогичный код для Push Notification, и он работает, когда я нажимаю просмотр для загрузки.Посмотреть никогда не загружает
Любая помощь будет оценена по достоинству.
BTW - стандартные соглашения об именах указывают, что имена переменных и методов должны начинаться с строчных букв. Только имена классов должны начинаться с прописных букв. – rmaddy
Вы создаете 'NavBar', но, похоже, не являетесь частью иерархии контроллера представления. –
Вы настраиваете навигационный контроллер, но никогда не показываете навигационный контроллер. – rmaddy