帮酷LOGO
0 0 评论
  • 显示原文与译文双语对照的内容
文章标签:Material  DES  MATE  POP  菜单  材料设计  MAT  弹出框  
Material design style popover options menu

  • 源代码名称:OptionsMenu
  • 源代码网址:http://www.github.com/uacaps/OptionsMenu
  • OptionsMenu源代码文档
  • OptionsMenu源代码下载
  • Git URL:
    git://www.github.com/uacaps/OptionsMenu.git
  • Git Clone代码到本地:
    git clone http://www.github.com/uacaps/OptionsMenu
  • Subversion代码到本地:
    $ svn co --depth empty http://www.github.com/uacaps/OptionsMenu
    Checked out revision 1.
    $ cd repo
    $ svn up trunk
    
  • OptionsMenuHeader

    VersionLicensePlatformCarthage compatible

    以Swift为 ,由 Niklas Fahl ( fahlout ) 开发, LinkedIn

    描述

    OptionsMenu是基于Android的选项菜单中的一个图书馆,可以通过在导航栏的右侧添加一个菜单。 OptionsMenu是一个popover样式菜单,它与菜单中的按钮相对应的每个添加操作设置为 UIAlertController。 操作可以通过完成处理程序轻松处理。

    OptionsMenuImage1

    OptionsMenuDemoGif

    目录

    安装

    Cocoa 荚

    OptionsMenu可以通过 CocoaPods 获得。

    要安装,请将以下行添加到 Podfile:

    
    pod 'OptionsMenu'
    
    
    
    

    Carthage

    Carthage compatible

    OptionsMenu可以通过 Carthage 获得。 将这一行附加到你的Cartfile,并遵循这些指令。

    
    github"uacaps/OptionsMenu"
    
    
    
    

    手动安装

    OptionsMenu所需的类文件位于这里知识库的root 中的类文件夹中,如下所示:

    CAPSOptionsMenu.swiftCAPSOptionsMenuAction.swiftCAPSOptionsMenuButton.swift

    如何使用 OptionsMenu

    安装(。有关详细信息,请参阅安装部分) 之后,你需要一个视图控制器,它位于导航控制器内,以便设置菜单。 之后,可以很容易地从该视图控制器设置 OptionsMenu,如下所示。

    /// Initialize with parent view controller and bar button image name////// -parameters:/// - viewController: View controller holding the navigation controller with the navigation bar the menu is to be put on/// - imageName: Name for menu bar button image/// - keepBarButtonOnRightEdge: If `true`, menu bar button will always stay on the rightmost positionlet optionsMenu: CAPSOptionsMenu =CAPSOptionsMenu(viewController: self, imageName: "ImageName", keepBarButtonAtEdge: true)/// Initialize with parent view controller and bar button image////// -parameters:/// - viewController: View controller holding the navigation controller with the navigation bar the menu is to be put on/// - image: Image for menu bar button/// - keepBarButtonOnRightEdge: If `true`, menu bar button will always stay on the rightmost positionlet optionsMenu: CAPSOptionsMenu =CAPSOptionsMenu(viewController: self, image: UIImage(), keepBarButtonAtEdge: true)/// Initialize with parent view controller and bar button system item////// -parameters:/// - viewController: View controller holding the navigation controller with the navigation bar the menu is to be put on/// - barButtonSystemItem: Bar button system item for menu bar button/// - keepBarButtonOnRightEdge: If `true`, menu bar button will always stay on the rightmost positionlet optionsMenu: CAPSOptionsMenu =CAPSOptionsMenu(viewController: self, barButtonSystemItem: UIBarButtonSystemItem.Organize, keepBarButtonAtEdge: true)

    ( 如果要在菜单上进行进一步操作,请不要忘记将它的设置为视图控制器中的属性)

    菜单操作可以轻松添加,如下所示。 你可以添加任意多的动作。 如果没有足够的空间显示所有动作,菜单将开始滚动。

    /// Options Action Setup////// - parameters:/// - title: Title to be displayed on action button in menu/// - handler: Completion handler for action button tap (can be nil)let menuAction1: CAPSOptionsMenuAction =CAPSOptionsMenuAction(title: "Action Title 1") { (action: CAPSOptionsMenuAction) ->Voidinprint("Tapped Action Button 1")
    }
    optionsMenu.addAction(menuAction1)

    文档级自定义项

    OptionsMenu完全可以定制,使你能够使它适合你的应用主题。 为了确保所有的更新都正确,请只使用下面列出的函数进行定制更改,不要手动设置任何属性,因为这样做不会反映你期望的方法。

    立即对所有内容进行 Customize

    如果希望一次进行大量更改,建议使用以下方法,使你可以一次更改所有自定义选项,并能够在你希望保留默认值的任何属性中发送'nil'。

    /// This methods lets you customize every customization option in one method call////// - parameters:/// - width: Maximum width of the menu/// - shadow: If `true`, shadow is added to the menu/// - shadowColor: Shadow color for the menu/// - backgroundColor: Background color for the menu/// - borderWidth: Border width for the menu/// - borderColor: Border color for the menu/// - actionButtonsTitleColor: Title color for the menu action buttons/// - actionButtonsHighlightedColor: Background color for the menu action buttons when tapped/// - cornerRadius: Corner radius for the menu/// - animationOption: Animation option for the menu open/close animation style/// -. Fade - menu will fade in/out/// -. Expand - menu will expand and contract from bar button center/// -. None - menu will appear and disappear without animations/// - animationDuration: Animation duration for the menu open/close animationfunccustomizeWith(maxMenuWidthmaxMenuWidth: CGFloat?, shadow: Bool?, shadowColor: UIColor?, backgroundColor: UIColor?, borderWidth: CGFloat?, borderColor: UIColor?, actionButtonsTitleColor: UIColor?, actionButtonsHighlightedColor: UIColor?, cornerRadius: CGFloat?, animationOption: AnimationOption?, animationDuration: NSTimeInterval?)

    自定义单个选项

    • 菜单最大宽度
    /// - parameters:/// - width: Maximum width of the menufuncmenuMaxWidth(width: CGFloat)
    • 菜单具有阴影
    /// - parameters:/// - shadow: If `true`, shadow is added to the menufuncmenuHasShadow(shadow: Bool)
    • 菜单阴影颜色
    /// - parameters:/// - color: Shadow color for the menufuncmenuShadowColor(color: UIColor)
    • 菜单背景颜色
    /// - parameters:/// - color: Background color for the menufuncmenuBackgroundColor(color: UIColor)
    • 菜单边框宽度
    /// - parameters:/// - width: Border width for the menufuncmenuBorderWidth(width: CGFloat)
    • 菜单边框颜色
    /// - parameters:/// - color: Border color for the menufuncmenuBorderColor(color: UIColor)
    • 菜单操作按钮标题颜色
    /// - parameters:/// - color: Title color for the menu action buttonsfuncmenuActionButtonsTitleColor(color: UIColor)
    • 菜单操作按钮突出显示的颜色
    /// - parameters:/// - color: Background color for the menu action buttons when tappedfuncmenuActionButtonsHighlightedColor(color: UIColor)
    • 菜单拐角半径
    /// - parameters:/// - radius: Corner radius for the menufuncmenuCornerRadius(radius: CGFloat)
    • 菜单动画选项
    /// - parameters:/// - option: Animation option for the menu open/close animation style/// -. Fade - menu will fade in/out/// -. Expand - menu will expand and contract from bar button center/// -. None - menu will appear and disappear without animationsfuncmenuAnimationOption(option: AnimationOption)
    • 菜单动画持续时间
    /// - parameters:/// - duration: Animation duration for the menu open/close animationfuncmenuAnimationDuration(duration: NSTimeInterval)

    使用OptionsMenu的应用程序

    如果你在 AppStore 中的应用程序使用这个库,请告诉我,以便我可以将你的应用程序添加到这个列表。

    协作

    如果你有任何增强或者查找 Bug的想法,请打开一个问题或者 fork 这个存储库,并请求。 我将联系任何在下面做出贡献的人。

    的未来工作

    • 动态删除动作的能力
    • 将菜单设置为导航栏左侧的能力
    • 动态更改动作按钮标题/颜色的能力
    • 将菜单设置为半透明的功能
    • 与iPad多任务处理的兼容性

    许可证

    版权所有( c ) 2014 University Alabama大学所有权利保留。

    如果满足以下条件,则允许在源和二进制表单中重新分配和使用,以及不修改:

    • 以源代码形式重新发布必须保留未经修改的上述版权声明、本许可条件以及其后的免责声明。
    • 二进制形式中的with必须重现上述版权声明,以及在文档和/或者它的他材料中提供的下列声明。
    • 大学的NAME 和贡献者的名字都可以用来在这个软件上签名或者推广产品。

    软件由版权持有者和贡献者"是"提供,包括明示或者默示担保,包括但不限于适销性担保和适用于特定用途的FITNESS和适合。 任何EVENT或者侵犯人,不论合同中出现的任何LIABILITY或者侵权情况,均不得承担任何直接。间接。偶然。特殊。范例或者侵权责任,即使通知可能发生此类损害。



    文章标签:DES  MAT  设计  菜单  POP  Material  MATE  材料设计  

    Copyright © 2011 HelpLib All rights reserved.    知识分享协议 京ICP备05059198号-3  |  如果智培  |  酷兔英语