2016-12-14 7 views
1

Я хотел бы знать, как я делаю, чтобы создать ссылки ярлыков вида?Домашний экран 3DTouch Быстрые действия

Как подключить ярлыки 3DTOUCH к главному экрану для вашего правильного вида приложения. Например: подключите домашний экран 3DTouch. Быстрые действия. НАСТРОЙКИ в окне настроек приложения?

screenshot

+0

Пожалуйста, прочтите [Как задать хороший вопрос] (http://stackoverflow.com/help/how-to-ask) и изменить свой вопрос соответственно так как это значительно улучшит ваши шансы получить хорошие ответы взамен, а ваш вопрос не будет отменен или закрыт. –

+0

У вас возникли проблемы с обработкой быстрых действий на главном экране или вы заинтересованы в создании страницы настроек для настройки быстрых действий? – grane2212

ответ

1

Здесь я выкладываю ответ с программным добавить ярлыки с прошивкой.

включить этот код в appdelegate.m

- (void)configDynamicShortcutItems { 

    // config image shortcut items 
    // if you want to use custom image in app bundles, use iconWithTemplateImageName method 
    UIApplicationShortcutIcon *shortcutAddIcon = [UIApplicationShortcutIcon iconWithType:UIApplicationShortcutIconTypeAdd]; 
// UIApplicationShortcutIcon *shortcutFavoriteIcon = [UIApplicationShortcutIcon iconWithType:UIApplicationShortcutIconTypeShare]; 

    UIApplicationShortcutIcon *icon1 = [UIApplicationShortcutIcon iconWithTemplateImageName:@"facebookRXTA.png"]; 
    UIApplicationShortcutIcon *icon2 = [UIApplicationShortcutIcon iconWithTemplateImageName:@"GoogleRXTA.png"]; 

    UIApplicationShortcutItem *shortcutSearch = [[UIApplicationShortcutItem alloc] 
               initWithType:@"com.youapp.bundleid.Facebook" 
               localizedTitle:@"Facebook" 
               localizedSubtitle:nil 
               icon:icon1 
               userInfo:nil]; 

    UIApplicationShortcutItem *shortcutFavorite = [[UIApplicationShortcutItem alloc] 
                initWithType:@"com.youapp.bundleid.Google" 
                localizedTitle:@"Google" 
                localizedSubtitle:nil 
                icon:icon2 
                userInfo:nil]; 

    UIApplicationShortcutItem *shortcutAdd = [[UIApplicationShortcutItem alloc] 
                initWithType:@"com.youapp.bundleid.Create new user" 
                localizedTitle:@"Create new user" 
                localizedSubtitle:nil 
                icon:shortcutAddIcon 
                userInfo:nil]; 


    // add all items to an array 
    NSArray *items = @[shortcutSearch, shortcutFavorite,shortcutAdd]; 

    // add the array to our app 
    [UIApplication sharedApplication].shortcutItems = items; 
} 
- (void)application:(UIApplication *)application performActionForShortcutItem:(UIApplicationShortcutItem *)shortcutItem completionHandler:(void (^)(BOOL))completionHandler{ 

    BOOL handledShortCutItem = [self handleShortCutItem:shortcutItem]; 

    completionHandler(handledShortCutItem); 
} 
- (BOOL)handleShortCutItem : (UIApplicationShortcutItem *)shortcutItem{ 

    BOOL handled = NO; 

    NSString *bundleId = [NSBundle mainBundle].bundleIdentifier; 

    NSString *shortcutSearch = [NSString stringWithFormat:@"%@.Facebook", bundleId]; 
    NSString *shortcutFavorite = [NSString stringWithFormat:@"%@.Google", bundleId]; 
    NSString *shortcutAdd = [NSString stringWithFormat:@"%@.Create new user", bundleId]; 


    if ([shortcutItem.type isEqualToString:shortcutSearch]) { 
     handled = YES; 

     //Do your navigation or your etc.... 

    } 

    else if ([shortcutItem.type isEqualToString:shortcutFavorite]) { 
     handled = YES; 

    //Do your navigation or your etc.... 
    } 

    return handled; 
}