WWSideMenuViewController


dependencies: [
.package(url: "https://github.com/William-Weng/WWSideMenuViewController.git", .upToNextMajor(from: "1.4.4"))
]

函数 |
说明 |
initSettingWithSegue(_:displayPosition:visualEffectStyle:delegate:) |
初始化设定 (使用Segue) |
initSettingWithViewController(_:displayPosition:visualEffectStyle:delegate:) |
初始化设定 (使用UIViewController) |
displayMenu(with:duration:curve:) |
显示侧边菜单 |
dismissMenu(with:duration:curve:) |
隐藏侧边菜单 |
backFirstItemViewController(with:duration:curve:) |
回到一开始的页面 (第一页) |
changeItemViewController(_:with:duration:curve:) |
切换页面 |
WWSideMenuViewControllerDelegate
函数 |
说明 |
sideMenu(_:state:) |
侧边菜单的动画状态 |
sideMenu(_:from:to:) |
侧边菜单的换页顺序 |
import UIKit
import WWPrint
import WWSideMenuViewController
final class SideMenuViewController: WWSideMenuViewController {
override func viewDidLoad() {
super.viewDidLoad()
initSettingWithSegue(delegate: self)
// initSettingWithSegue(displayPosition: .back(256), delegate: self)
// initSettingWithSegue(displayPosition: .scale(365, 0.8, 32.0), visualEffectStyle: nil, delegate: self)
}
}
extension SideMenuViewController: WWSideMenuViewControllerDelegate {
func sideMenu(_ sideMenuController: WWSideMenuViewController, state: MenuState) {
wwPrint(state)
}
func sideMenu(_ sideMenuController: WWSideMenuViewController, from previousViewController: UIViewController?, to nextViewController: UIViewController) {
wwPrint("from: \(String(describing: previousViewController)) to: \(nextViewController)")
}
}
import UIKit
import WWSideMenuViewController
class MenuViewController: WWMenuViewController {
lazy var tabViewController: UIViewController = { self.storyboard!.instantiateViewController(withIdentifier: "Tab") }()
override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent?) {
super.touchesBegan(touches, with: event)
_ = dismissMenu()
}
@IBAction func dimissMenu(_ sender: UIButton) { _ = dismissMenu() }
@IBAction func changePageViewController(_ sender: UIButton) { _ = backFirstItemViewController() }
@IBAction func changeTabViewController(_ sender: UIButton) { _ = changeItemViewController(tabViewController) }
}
import UIKit
import WWSideMenuViewController
class Page1ViewController: WWItemViewController {
@IBAction func diplayMenu(_ sender: UIBarButtonItem) { _ = displayMenu() }
}
class Tab1ViewController: WWItemViewController {
@IBAction func diplayMenu(_ sender: UIButton) { _ = displayMenu() }
}
class Tab2ViewController: WWItemViewController {
@IBAction func diplayMenu(_ sender: UIButton) { _ = displayMenu() }
}