HKSideMenu 0.0.5

HKSideMenu 0.0.5

Kyryl Horbushko 维护。



  • Kyryl

SideMenu

轻量级 pod,用于将简单的侧边菜单集成到您的 iOS 应用中。

Swift ICONKit-license Platform type

demo

安装

使用 CocoaPods

只需将以下行添加到 Podfile 中

pod 'HKSideMenu'

这将下载 SideMenu 二进制文件和依赖项到您的 Pods/ 目录,在您下一次执行 pod install 时。

这是安装 SideMenu 特定版本的首选方式。

使用方法

  • 创建 Menu

为此,请创建一个符合 MenuPresentableUIViewController。重写 storyboardName - 包含 Menu 控制器 xib 的 storyboard 文件名和 controllerIdentifier - 控制器的 storyboard Id。以下是一个放置在 Main.storyboard 中的 MenuControllerMenuController 的示例

import UIKit

final class MenuController: UIViewController, MenuPresentable {

  static var storyboardName: String {
    return "Main"
  }

  static var controllerIdentifier: String {
    return String(describing: MenuController.self)
  }
}

注意:默认实现包含以下内容 controllerIdentifier

  static var controllerIdentifier: String {
    return String(describing: self)
  }

demo

  • SideMenu 创建 RootController

这是一个将持有所有内容和侧边菜单项的控制器。

要创建 rootController,您应创建/使用类 RootSideMenuController。此类应告知其在何处寻找 Menu。要在加载 RootSideMenuController 之前将其告知 - 在加载 RootSideMenuController 之前设置 sideMenu 类型为 RootSideMenuAppearence.menuType

RootSideMenuAppearence.menuType = MenuController.self

完整代码

import UIKit

final class MyRootController: RootSideMenuController {
  // MARK: - LifeCycle

  override func viewDidLoad() {
  	 // make sure this done before `super.viewDidLoad`, in other case you will receive assertion
    RootSideMenuAppearence.menuType = MenuController.self

    super.viewDidLoad()
  }
}

到此为止 - 您完成了!构建和运行项目。

为了控制菜单状态,请使用来自 RootSideMenuControllerhideMenushowMenu 操作。

高级配置

使用 RootSideMenuAppearence 中的不同选项来控制菜单的外观。

  /// Side offset for menu - display visible gap when full menu isOpened
  ///
  /// Default - 60.0
  public static var openMenuOffset: CGFloat = 60

  /// Color which used for dimming content while side menu opened
  ///
  /// Default - UIColor.lightGray.withAlphaComponent(0.5)
  public static var dimmingViewColor: UIColor = UIColor.lightGray.withAlphaComponent(0.5)

  /// Indicate whenever we should used shadow on side menu while it's opened
  ///
  /// Default - true, enabled
  public static var showShadow: Bool = true

  /// Shadow color for side menu, used with `showShadow` option
  ///
  /// Default - UIColor.lightGray
  public static var shadowColor: UIColor = UIColor.lightGray

  /// Indicate whenever we should show side menu from left or right side
  ///
  /// Default - Show from right
  public static var showMenuOnRightSide: Bool = false

  /// Indicate whenever we should allow to perform damping pan for side menu when it comes to final position
  /// If enabled - make sure your side menu has some extended not clipped view
  ///
  /// Default - false, disabled
  public static var enablePanDamping: Bool = false

  /// Hold registered type for side menu
  public static var menuType: MenuPresentable.Type!

待办

  • 测试
  • 选择移动内容而不是菜单叠加
  • 更多外观选项
  • 从左边和右边切换的 simo 菜单

需求

  • Xcode 10 或更高版本
  • iOS 11 或更高版本
  • Swift 5 或更高版本
  • Cocoapods

许可证

遵循 MIT 许可证。

联系方式

关于 CalendarView 有问题或问题?创建一个 问题

如果您想贡献力量,只需创建一个 pull request。