DropDownMenuKit

UIKit drop down menu, simple yet flexible and written in Swift

Github stars Tracking Chart

DropDownMenuKit

Build Status
Platforms iOS
Language Swift 5
License MIT

DropDownMenuKit is a custom UIKit control to show a menu attached to the navigation bar or toolbar. The menu appears with a sliding animation and can be deeply customized. For example, with icons, embedded controls, or a checkmark to denote a selected row among multiple menu cells.

The control is made up of three parts:

  • DropDownMenu: the menu itself, a UIView subclass that contains a UITableView presenting one or more DropDownMenuCell(s)
  • DropDownMenuCell: a menu entry, implemented as a UITableViewCell subclass
  • DropDownMenuTitleView: an optional title view to toggle the menu, which is usually put in the navigation bar and acts as a disclosure indicator

To see in action, take a look at the very beginning of Placeboard demo video.

Compatibility

Carthage

Add the following line to your Cartfile, run carthage update to build the framework and drag the built DropDownMenuKit.framework into your Xcode project.

github "qmathe/DropDownMenuKit"

CocoaPods

Add the following lines to your Podfile and run pod install with CocoaPods 0.36 or newer.

use_frameworks!

pod "DropDownMenuKit"

Manually

If you don't use Carthage or CocoaPods, it's possible to drag the built framework or embed the source files into your project.

Framework

Build DropDownMenuKit framework and drop it into your Xcode project.

Files

Drop DropDownMenu.swift, DropDownMenuCell.swift, DropDownTitleView.swift and DropDownMenuKit.xcassets into your Xcode project.

App Extension Usage

Build Settings

Add -DAPP_EXTENSION to DropDownMenuKit > Build Settings > Other Swift Flags.

Restrictions

  • DropDownMenuCell.menuAction must take a single argument
  • DropDownMenuCell.menuTarget must not be nil

Main metrics

Overview
Name With Ownerqmathe/DropDownMenuKit
Primary LanguageSwift
Program languageSwift (Language Count: 3)
Platform
License:Other
所有者活动
Created At2016-08-02 09:56:19
Pushed At2023-03-05 15:02:30
Last Commit At2023-03-05 16:01:53
Release Count9
Last Release Name1.0 (Posted on 2023-03-05 16:02:25)
First Release Name0.8 (Posted on 2016-08-23 13:23:25)
用户参与
Stargazers Count304
Watchers Count12
Fork Count38
Commits Count119
Has Issues Enabled
Issues Count26
Issue Open Count4
Pull Requests Count3
Pull Requests Open Count0
Pull Requests Close Count2
项目设置
Has Wiki Enabled
Is Archived
Is Fork
Is Locked
Is Mirror
Is Private