A lightweight, customizable iOS action sheet controller with Material Design styling, written in Swift.
MaterialActionSheetController is an open-source iOS library that implements a Material Design-styled action sheet controller for Swift applications. It solves the need for a modern, customizable alternative to Apple's UIAlertController, providing enhanced visual design and flexible configuration options. Developers can easily present action sheets with icons, accessory views, sections, and theme support.
iOS developers building Swift applications who want to implement Material Design action sheets or need more customization than UIAlertController offers. It's particularly useful for projects following Material Design guidelines or requiring branded UI components.
Developers choose MaterialActionSheetController for its balance of familiarity and flexibility—it mimics UIAlertController's API for ease of adoption while offering extensive customization, built-in themes, and closure-based handlers that simplify code. Its lightweight nature and CocoaPods support make integration straightforward.
A Google like action sheet for iOS written in Swift.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Uses closures for action handlers and callbacks, similar to UIAlertController, leading to cleaner and more readable code as shown in the usage examples.
Supports icons, accessory views like UISwitch, and separate touch handling for accessories, enabling complex interactive elements without extra boilerplate.
Allows grouping actions into sections, improving usability for long lists and mimicking Material Design's structured action sheets.
Includes light and dark themes out of the box with full customization, making it easy to match app design without starting from scratch.
The README lists 'Present on iPad as a pop-up' as a TODO, meaning it lacks optimized presentation for iPad interfaces, which is a common iOS requirement.
Documentation is explicitly listed as a TODO, so developers must rely on sparse examples and source code, increasing the learning curve for advanced features.
Only compliant with Swift 3, which is several versions behind current standards; this may cause integration issues or require manual updates for modern projects.