TestsTested | ✗ |
LangLanguage | SwiftSwift |
License | MIT |
ReleasedLast Release | Aug 2016 |
SPMSupports SPM | ✗ |
Maintained by Thanh-Nhon Nguyen.
Lightweight and totally customizable. Create and present it the way you do with UIAlertController.
Default light theme | Dark theme | Custom header |
---|---|---|
Add MaterialActionSheetController.swift
to your project
// Import MaterialActionSheetController if you're using CocoaPods
import MaterialActionSheetController
// Create an action
let lightBulbAction = MaterialAction(
icon: UIImage(named: "lightbulb"),
title: "Action with UISwitch as an accessory view", handler: { [unowned self] (accessoryView) in
self.doSomething()
},
accessoryView: UISwitch(),
dismissOnAccessoryTouch: true,
accessoryHandler: { [unowned self] (accessoryView) in
if let lightBulbSwitch = accessoryView as? UISwitch {
if accessoryView.on {
print("Light is ON!")
} else {
print("Light is OFF!")
}
}
self.doSomeOtherThing()
})
// Then create and present your MaterialActionSheetController
// parameter sections is a variadic which take a flexible list of section
let materialActionSheetController = MaterialActionSheetController(
title: "A nice title",
message: "A friendly message",
actionSections: [aCoolAction, anotherCoolAction], [cancelAction])
// Customize theme
materialActionSheetController.theme = MaterialActionSheetTheme.dark()
presentViewController(materialActionSheetController, animated: true, completion: nil)
See code in demo for more detailed examples.
Feel free to make PR, contributions are warmly welcome and appreciated.
MaterialActionSheetController is available under the MIT license. See the LICENSE file for more info.