Подтвердить что ты не робот

Добавление слайда влево-вправо анимация (переход) в addSubView

Я пытаюсь подражать NavigationViewController, очень похоже на значение по умолчанию MailApp в iPhone

При нажатии на сводку "Почта" она должна вставлять данные почты, а когда нажата кнопка "BACK", представление "Сводка сводок" будет снова вставлено.

Это то, что мне нужно оживить переход от Сводка к деталям (removeFromSuperView)

CGRect temp = self.view.frame;
temp.origin.x = 300;
[UIView animateWithDuration:0.5
                      delay:0.0
                    options: UIViewAnimationCurveEaseOut
                 animations:^{
                     self.view.frame = temp;
                 }completion:^(BOOL finished){
                     [self.view removeFromSuperview];
                 }];

Это то, что я должен оживить переход от Detail To Summary (addSubview)

    CATransition *transition = [CATransition animation];
    transition.duration = 0.5;
    transition.type = kCATransitionFromRight;
    transition.subtype = kCATransitionFade;
    [parentView.layer addAnimation:transition forKey:nil];
    [parentView addSubview:myVC.view];

Теперь моя первая часть кода работает хорошо! Где - как вторая часть, я просто могу добиться анимации Fade-in. Как я могу внести слайд-переход?

4b9b3361

Ответ 1

Мне просто нужно выбрать тип kCATransitionPush для моего CATransition

    CATransition *transition = [CATransition animation];
    transition.duration = 0.5;
    transition.type = kCATransitionPush;
    transition.subtype = kCATransitionFromLeft;
    [transition setTimingFunction:[CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseInEaseOut]];
    [parentView.layer addAnimation:transition forKey:nil];

    [parentView addSubview:myVC.view];

Обновление для Swift:

    let transition = CATransition()
    transition.type = kCATransitionPush
    transition.subtype = kCATransitionFromLeft
    parentView.layer.add(transition, forKey: nil)
    parentView.addSubview(myVC.view)

Ответ 2

Или вы можете проверить: HorizontalSlide Segue (просто Google, я не могу получить ссылку на мобильном телефоне), это отличный переход, который просто представляет собой переход, который вы добавляете из вида A в B....

На стороне примечания, если это находится в навигационном контроллере, по умолчанию или поп должен иметь слайд-анимацию по умолчанию...