iOS如何制作一个可以进出的菜单 Controller

标签 ios swift uiviewcontroller

我的应用程序中有一个按钮,它始终位于窗口的最顶部,单击时,它会弹出一个菜单(其中包含导航按钮)。目前,我让按钮在每次单击时创建菜单 Controller 的新实例并调用

topmost_controller.present(MenuController()) 

当菜单 Controller 被点击时,dismiss 会被调用。但是,我认为不需要每次都创建一个新实例,因为 Controller 是静态的。当我尝试写作时

static let controller = MenuController()

MenuController类中,将之前的present方法替换为

topmost_controller.present(MenuController.controller)

多次单击演示按钮后,我收到错误应用程序尝试以模态方式演示事件 Controller 。如何使用 MenuController 的静态实例来实现?我应该关心吗?注意:我没有使用 Storyboard。谢谢。

最佳答案

制作菜单最简单(也是最酷)的方法是使用我最近发现的这个 Pod https://github.com/yannickl/FlowingMenu

pod 'FlowingMenu'

它提供了一个交互式过渡管理器来显示具有流动和弹跳效果的菜单。

这张图片向您展示了它是如何工作的 https://camo.githubusercontent.com/59f8644f915299e0e80c09948d3db8efd8c9beae/687474703a2f2f79616e6e69636b6c6f72696f742e636f6d2f7265736f75726365732f666c6f77696e676d656e752e676966

(如果您在使用它时遇到问题,请在这里评论您的问题,就我个人而言,我花了一点时间才理解它哈哈哈)

(如果您不知道如何使用 CocoaPods,这个教程可以帮助您 https://guides.cocoapods.org/using/getting-started.html#toc_3 )

关于iOS如何制作一个可以进出的菜单 Controller ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45135155/

相关文章:

swift 3;照片未保存到照片库

ios - 当 uitableview 嵌入到 uiviewcontroller 中时,为什么 uitableview 的某个部分的标题异常高?

ios - 为什么当我在应用程序加载后将项目添加到 Core Data 时,它们直到我点击单元格才会显示? (然后只有那个显示。)

ios - 删除 AFNetworking 3 GET 请求中查询末尾的问号

ios - 使用 NS[UI]ScrollView 操作投影

swift - 我查看用户是否赢得井字游戏比赛的逻辑不起作用

json - Swift JSON 需要跳过一个组并获取其子元素

ios - 使用自定义 View Controller 转换,我在哪里可以隐藏状态栏?

ios - Dealloc 正在推迟

ios - 导航栏上的 Apple 标准设置栏图标