gpt4 book ai didi

swift - 如何更改 leftBarButtonItem 上 pushViewController 的动画方向?

转载 作者:搜寻专家 更新时间:2023-11-01 05:32:30 24 4
gpt4 key购买 nike

我已将 leftBarButtonItem 添加到 NavigationBar(与 NavigationController 结合使用)。 leftBarButtonItem 在顶部的 ViewController 上。

当我使用 pushViewController 函数转到下一个 ViewController 时,动画是从右到左的,就像按下导航栏右侧的按钮时一样。

如何将动画方向更改为从左到右,就像在 Tinder 中按下导航栏上的左按钮时一样?

代码如下:

let profileButton = UIBarButtonItem(image: #imageLiteral(resourceName: "profile"), style: .plain, target: self, action: #selector(self.showProfile))
self.navigationItem.leftBarButtonItem = profileButton

@objc func showProfile() {
let profileViewController = storyboard?.instantiateViewController(withIdentifier: "profile") as! ProfileViewController
self.navigationController?.pushViewController(profileViewController, animated: true)
}

最佳答案

要在推送到另一个 viewController 时设置动画,您可以使用 CATransition

@objc func showProfile() {
let profileViewController = storyboard?.instantiateViewController(withIdentifier: "profile") as! ProfileViewController
let transition = CATransition()
transition.duration = 0.5
transition.timingFunction = CAMediaTimingFunction(name: CAMediaTimingFunctionName.easeInEaseOut)
transition.type = CATransitionType.push
transition.subtype = CATransitionSubtype.fromLeft
navigationController?.view.layer.add(transition, forKey: kCATransition)
self.navigationController?.pushViewController(profileViewController, animated: true)
}

您可以将动画方向更改为fromRight, fromTopfromBottom

关于swift - 如何更改 leftBarButtonItem 上 pushViewController 的动画方向?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53724526/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com