У меня есть три вида на том же viewController, и мне нужно переключиться между ними с переходами. Каков наилучший способ сделать это? СпасибоiOS переключатель между видами одного и того же viewController
ответ
, если вы используете этот сильфон код для анимации для переходов, а затем просто нужно, чтобы скрыть и показать вид на событии нажатия кнопки ...
CATransition *animation = [CATransition animation];
[animation setDelegate:self];
[animation setType:kCATransitionFromBottom];
[animation setDuration:1.0];
[animation setTimingFunction:[CAMediaTimingFunction functionWithName:
kCAMediaTimingFunctionEaseInEaseOut]];
[[yourViewControllers layer] addAnimation:animation forKey:@"transitionViewAnimation"];
надежды, что это поможет вам .. :)
Ну, я не уверен, что если вы сделали этот вопрос ясно .Я думаю, вы хотите, чтобы отобразить виды по одному time.In тот случай: -
1> вы можете добавить точку в горизонтальной UIScrollView
с его размером кадра, равным экрану или w (ширина должна быть равна ширине экрана .. отображается 1 за раз) вместе с UIPageControl.
2> Другой способ заключается в использовании методов: -
[self.view bringSubViewToFront:yourSubView];
[self.view sendSubViewToBack:yourSubView ];
в соответствии с вашими требованиями.
3> Вы можете использовать анимацию для переключения между видами.
[UIView animateWithDuration:0.7
delay:1.2
options: UIViewAnimationCurveEaseOut
animations:^{
CGRect frame=assignAframeToSwitch;
yourView.frame = frame;
}
completion:^(BOOL finished){
NSLog(@"Done!");
}];
OR
_Weak CATransition *transition;
transition = [CATransition animation];
transition.delegate=self;
transition.duration = 0.75;
transition.timingFunction = [CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseInEaseOut];
[[viewcontroller layer] addAnimation:transition forKey:@"transition"];
CATransition это лучший способ, чтобы оживить переход
CATransition* trans = [CATransition animation];
[trans setType:kCATransitionPush];
[trans setDuration:0.5];
[trans setSubtype:kCATransitionFromBottom];
// code to change the view//
CALayer *layer = rootViewController.view.layer;
[layer addAnimation:trans forKey:@"Transition"];
Надеется, что это помогает.
Самый быстрый способ сделать это с помощью встроенных блочных анимаций перехода UIView. Просто посмотрите документацию для UIView. Его путь проще, чем методы CATransition.
это будет зависеть от того, как вы хотите переключать виды? – rishi