gpt4 book ai didi

swift3 - 如何在 Swift 3.0 的右侧创建侧边菜单?

转载 作者:行者123 更新时间:2023-12-01 04:26:41 25 4
gpt4 key购买 nike

我是初学者,我想在右侧创建一个侧边菜单。

到目前为止,我在 viewController 的右上角有一个 UIButton,我想要的是当我单击该按钮时,我想显示/隐藏幻灯片菜单 假设有 3 个项目……

当我单击每个项目时,它将转到不同的 View Controller 。在我的项目中,我使用 AMSlideMenu 在一个 viewController 中显示幻灯片菜单。提前致谢。

最佳答案

Anuj 只需按照步骤操作-

  1. 创建一个 SideMenuViewController ,它是 UIViewController 的子类,使用 Storyboard根据要求显示它的外观。
  2. 通过单击 UIButton 添加此 SideMenuViewController 及其 View 作为父 View Controller 中的 subview Controller 。
  3. 完成后,从父 View Controller 中删除 SideMenuViewController,并从父 View 中删除其 View 。

对所有 View Controller 重复 2 和 3。

更新代码:

在你的 View Controller 中声明-

var sideMenuViewController = SideMenuViewController()
var isMenuOpened:Bool = false

viewDidLoad

    sideMenuViewController = storyboard!.instantiateViewController(withIdentifier: "SideMenuViewController") as! SideMenuViewController
sideMenuViewController.view.frame = UIScreen.main.bounds

在你的 button Clicked 事件中 -

  func openAndCloseMenu(){

if(isMenuOpened){

isMenuOpened = false
sideMenuViewController.willMove(toParentViewController: nil)
sideMenuViewController.view.removeFromSuperview()
sideMenuViewController.removeFromParentViewController()

}
else{

isMenuOpened = true
self.addChildViewController(sideMenuViewController)
self.view.addSubview(sideMenuViewController.view)
sideMenuViewController.didMove(toParentViewController: self)
}

}

动画:

let transition = CATransition()

let withDuration = 0.5

transition.duration = withDuration
transition.timingFunction = CAMediaTimingFunction(name: kCAMediaTimingFunctionEaseInEaseOut)
transition.type = kCATransitionPush
transition.subtype = kCATransitionFromLeft

sideMenuViewController.view.layer.add(transition, forKey: kCATransition)

关于swift3 - 如何在 Swift 3.0 的右侧创建侧边菜单?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46273226/

25 4 0