HTML5   发布时间:2022-04-27  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了ios – 将uiviewcontroller推送到另一个带有顶部 – 底部动画的viewcontroller大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
在我的项目中一个功能,当用户在顶部栏上滑动时,一个屏幕将出现从上到下的动画

@H_301_8@

有两个视图控制器
oneviewcontroller.m@H_301_8@

@H_301_8@

- (void)swipe
{
    listViewController *list_obj=[[listViewController alloc] initWithNibName:@"listViewController" bundle:NULL];
    UIViewAnimationTransition trans = UIViewAnimationTransitionCurlUp;
    [UIView beginAnimations: nil context: nil];
    [UIView setAnimationTransition: trans forView: [self.view window] cache: YES];
    [self.navigationController pushViewController:list_obj animated:YES];
    [UIView commitAnimations];
}

但是这并不能让动画从上到下@H_301_8@

我想实现导航
推:=顶部 – 底部
Pop:= bottom – top@H_301_8@

请帮我
谢谢@H_301_8@

解决方法

您可以将视图控制器从上到下推送,如下所示:

@H_301_8@

Obj-C:@H_301_8@

@H_301_8@

- (void) pushVC:(UIViewController )dstVC {
    CATransition transition = [CATransition animation];
    transition.duration = 0.5;
    transition.timingFunction = [CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseInEaSEOut];
    transition.type = kCATransitionPush;
    transition.subtype = kCATransitionFromTop;
    [self.navigationController.view.layer addAnimation:transition forKey:kCATransition];
    [self.navigationController pushViewController:dstVC animated:NO];
}

使用以下代码从下到上弹出视图控制器:@H_301_8@

@H_301_8@

- (void) popVC {
    CATransition transition = [CATransition animation];
    transition.duration = 0.5;
    transition.timingFunction = [CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseInEaSEOut];
    transition.type = kCATransitionFade;
    transition.subtype = kCATransitionFromBottom;
    [self.navigationController.view.layer addAnimation:transition forKey:kCATransition];
    [self.navigationController popViewControllerAnimated:NO];
}

斯威夫特3:@H_301_8@

@H_301_8@

func open() {
    let setTingsVC = SetTingsVC()
    let transition = CATransition()
    transition.duration = 0.5
    transition.timingFunction = CAMediaTimingFunction(name: kCAMediaTimingFunctionEaseInEaSEOut)
    transition.type = kCATransitionPush
    transition.subtype = kCATransitionFromTop
    navigationController?.view.layer.add(transition,forKey: kCATransition)
    navigationController?.pushViewController(setTingsVC,animated: falsE)
  }

  func close() {
    let transition = CATransition()
    transition.duration = 0.5
    transition.timingFunction = CAMediaTimingFunction(name: kCAMediaTimingFunctionEaseInEaSEOut)
    transition.type = kCATransitionFade
    transition.subtype = kCATransitionFromBottom
    navigationController?.view.layer.add(transition,forKey:kCATransition)
    let _ = navigationController?.popViewController(animated: falsE)
  }

大佬总结

以上是大佬教程为你收集整理的ios – 将uiviewcontroller推送到另一个带有顶部 – 底部动画的viewcontroller全部内容,希望文章能够帮你解决ios – 将uiviewcontroller推送到另一个带有顶部 – 底部动画的viewcontroller所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。