AZDropdownMenu 1.1.3

AZDropdownMenu 1.1.3

测试已测试
语言语言 SwiftSwift
许可证 MIT
发布上次发布2017年10月
SwiftSwift版本3.0
SPM支持SPM

Azuritul维护。



AZDropdownMenu

AZDropdownMenu是一个支持Swift的简单下拉菜单组件。

屏幕截图

屏幕演示中使用的代码包含在捆绑的示例项目中。

screencast

示例项目

要运行示例项目,用git clone https://github.com/Azuritul/AZDropdownMenu.git克隆仓库,然后首先从Example目录运行pod install

要求

  • iOS 8或更高版本
  • Xcode 8或更高版本
  • Swift 3

安装

AZDropdownMenu通过CocoaPods提供。安装它,只需将以下行添加到您的Podfile中

use_frameworks!
pod 'AZDropdownMenu'

用法

声明一个用作菜单项的文本数组。

let titles = ["Action 1", "Action 2", "Action 3"]

然后将数组传递给初始化器

let menu = AZDropdownMenu(titles: titles)

设置以便让UIBarButtonItem与显示菜单的函数关联

let button = UIBarButtonItem(image: UIImage(named: "menu_image"), style: .Plain, target: self, action: "showDropdown")
navigationItem.leftBarButtonItem = menuButton

调用public func showMenuFromView(view:UIView)可以显示菜单。

func showDropdown() {
    if (self.menu?.isDescendantOfView(self.view) == true) {
        self.menu?.hideMenu()
    } else {
        self.menu?.showMenuFromView(self.view)
    }
}

处理程序public var cellTapHandler : ((indexPath:NSIndexPath) -> Void)?在菜单项被点击时会被调用。因此,在这里放置代码来完成您想要的操作。例如

menu.cellTapHandler = { [weak self] (indexPath: NSIndexPath) -> Void in
    self?.navigationController?.pushViewController(controller, animated:true)
}

带有图标创建菜单

在初始化器中传入public init(dataSource:[AZDropdownMenuItemData])中的AZDropdownMenuItemData,然后您就可以使用了。

查看此存储库中的示例项目以获取更多该库的用法。

可配置选项

目前,AZDropdownMenu可以通过以下属性进行自定义。未来还将有更多。

  • itemHeight 菜单项的高度。默认为44。
  • itemColor 菜单项的背景色。默认为白色。
  • itemFontColor 菜单项的文本颜色。默认为黑色。
  • itemFontSize 菜单项的字体大小。默认为14.0
  • itemFont 菜单中使用的字体。默认为‘Helvetica’
  • itemAlignment 菜单项的对齐方式。默认为左对齐。
  • itemSelectionColor 在菜单项点击时的背景颜色。默认为灰色。
  • overlayAlpha 背景覆盖层的不透明度。默认为0.5。
  • overlayColor 背景覆盖层的颜色。默认为黑色。
  • menuSeparatorStyle 菜单的分隔符。默认为单线。
  • menuSeparatorColor 分隔符的颜色。默认为浅灰色。
  • itemImagePosition 菜单中图片的位置。可以在文本前或后定位。默认为.Prefix
  • shouldDismissMenuOnDrag 如果设置为true,则在拖动时会关闭菜单。默认值是false

版本

  • 1.1.2

    • Swift 3 语法更新

  • 1.1.1

    • Swift 2.2的#selector语法更新

  • 1.1.0

    • 新增shouldDismissMenuOnDrag选项,如果启用此选项,则拖动时会关闭菜单
    • 修改了示例项目,使用UITableView示例。
    • 为菜单添加手势处理程序。
    • 将config结构体提取到单独的文件中。
    • 更新readme。

  • 1.0.0
    • 新增itemImagePosition选项,现在可以配置图标位置。
    • 修改了示例项目中图标集及其对应位置。
    • 稍微修改了示例项目的外观。
    • 修改了示例项目的结构。
    • 添加CHANGELOG.md。

  • 0.6.1
    • 更新readme。

  • 0.6.0
    • 现在可以在菜单中使用图标。
    • 添加配置选项:menuSeparatorColoritemFont

  • 0.5.3
    • 现在可以配置被点击时项的背景颜色。

归功于

作者

Chris Wu (Azuritul), [email protected]

许可协议

AZDropdownMenu可以在MIT许可下使用。有关更多信息,请参阅LICENSE文件。