Tag: 菜单

WBSwiftyMenu

WBSwipeableCell用于在TableViewCell和CollectionViewCell中显示选项菜单。 我们制作了此菜单,以在单个单元格中显示多个选项。 Apple在一个单元格中最多支持3个项目,但是在我们的控制器中,您可以添加3个以上的项目。 我已经从这个控制器中获取了这个想法-> https://github.com/SwipeCellKit/SwipeCellKit 背景 我已经为tableviewcell和collectionviewcell使用了许多菜单,但是它们都有一些局限性。 WBSwipeableCell用于菜单项过多且需要在一个视图中显示的地方。 示范 菜单垂直布局 对于Vertical菜单布局,我们需要实现MenuViewDelegate协议的一种可选委托方法,如下所示 func menuView(_ view:MenuView,menuLayoutForRowAtIndexPath indexPath:IndexPath)-> MenuLayout { 返回.vertical } 菜单方块布局 对于Square菜单布局,我们需要实现MenuViewDelegate协议的一种可选委托方法,如下所示 func menuView(_ view:MenuView,menuLayoutForRowAtIndexPath indexPath:IndexPath)-> MenuLayout { 返回.square } 菜单水平布局 对于水平菜单布局,我们需要实现MenuViewDelegate协议的一种可选委托方法,如下所示 func menuView(_ view:MenuView,menuLayoutForRowAtIndexPath indexPath:IndexPath)-> MenuLayout { 返回水平 } 有关此控制器的详细信息,可以在Github上进行检查:https://github.com/mwaqasbhati/WBSwipeableCell 我希望大家分叉它,并帮助我改进此库。

使用RSSelectionMenu(Swift)实现iOS Dropdown

每个iOS开发人员都想知道为什么没有默认的UIKit组件来显示下拉列表或选择列表的问题? 🤔 当您的团队同时为(Android和iOS)平台开发移动应用程序时,Android开发人员会获得一点优势,因为他们具有Material Design Dropdown菜单。 每次都使用所需的委托,数据源创建UITableView并将其显示为弹出框,这太令人沮丧。 并且当它有多个选择时,会增加代码复杂度。 因此,这是一个更加简单,易于使用但功能强大的可重用控件,可以用作下拉菜单,也可以从Swift中创建的列表中进行多个选择。 让我们看看如何在iOS应用中实现RSSelectionMenu 。 安装 椰子足 pod’RSSelectionMenu’ 显示单个选择列表 只需创建带有所需列表的菜单,提供所选项目并显示。 let数据:[String] = [“ Jack”,“ Rob”,“ Michel”,“ Denial”] var selectedNames:[字符串] = [] //使用数据源创建菜单->此处[String] let menu = RSSelectionMenu(dataSource:data){(单元格,名称,indexPath)在 cell.textLabel?.text =名称 } //提供选定的项目 menu.setSelectedItems(items:selectedNames){(名称,索引,selected,selectedItems)在 selectedNames = selectedItems } //显示-现在 menu.show(来自:自我) // 要么 //显示-推送 menu.show(style:.push,from:self) 多项选择 猜猜您需要做什么才能拥有多选列表? 只需将样式指定为“ multiple”即可 。 let menu = RSSelectionMenu(selectionStyle:.multiple,dataSource:data){(单元格,名称,indexPath)在 […]

您实际上从项目成就中学到了什么? (2/2)

在上一个故事中,我讨论了已解决的主要错误。 接下来,我将分享我自己开发的一些小功能。 我知道这些很简单,并且已经有很多库可用。 但是,这全都取决于您如何努力地自己做事。 使用默认的UISlider不能这么自定义。 因此,我制作了一个自定义类ProgressBar 。 在此,我添加了子视图(上面蓝色突出显示的一个)。 添加了@IBInspectable属性,以便我们可以直接从情节提要中以编程方式自定义。 所以我用自定义类SnackBar创建了一个新的UIView 。 拖延了titleLabel并添加了UIViewController的扩展名,以便我可以从任何视图控制器中调用。 但是我遇到的主要问题是如何在任何视图控制器中提示。 幸运的是,我从堆栈溢出得到了关于任何视图中的浮动对象的答案,即使用UIWindow和Apple已经在AppDelegate类中提供了窗口对象。 我拖动一个UIView并将UITableView作为子视图添加到我的ViewController中,将DropDownView分配为带有插座的自定义类。 @IBOutlet弱var dropDownView:DropDownView! 在底部添加了一个UIView作为高度限制为1的分隔符。上部包含一个标签,其中显示了选定的选项。 那就是带有标题和标记的Option表单元UI。 这对于所选选项将是可见的。 DropDownTableViewCell是上述选项单元格UI的自定义类。 DropDownCellModel是由选项类型( PerformanceDateGroup )和选定状态组成的单元格模型。 现在,根据要求,每天,每周和每月需要3个选项。 创建枚举PerformanceDateGroup选项案例。 上面的类是DropDownView,它由 1. OptionTableView的 委托和dataSources 。 2. setupGesture()已添加到选定标签。 点击它会调用toggleMenu()方法来显示/隐藏下拉菜单。 3. handleFilterSelection()装饰用户选择的那个单元格。 4.在选择选项时,它调用的是委托方法didSelect(…) ,该方法执行符合ViewController的操作。 用法: setupDropDown()将设置下拉单元模型并委托。 setupData()首次使用日期选项作为过滤器时第一次处理您的数据。 hideOnOtherView()处理用户是否在下拉菜单外点击。 如果下拉菜单可见,它将隐藏。 希望您喜欢这个故事,并希望自己开始发展。 👏👏👏 您的一项努力可以将事情变成另一个层次 🎉🎉🎉 待会儿👋👋👋!!!