A highly configurable iOS alert view controller replacement with custom content views and UI customization.
NYAlertViewController is an open-source iOS library that replaces Apple's UIAlertController and UIAlertView with a highly customizable alternative. It allows developers to add custom content views, fully style the alert's appearance, and choose transition animations while maintaining a familiar API. It solves the limitation of system alerts by enabling rich, branded alert experiences in iOS apps.
iOS developers working in Objective-C or Swift who need more control over alert presentation, styling, and content than Apple's native UIAlertController provides.
Developers choose NYAlertViewController for its deep customization capabilities—like embedding custom views and styling every visual element—while keeping the same intuitive block-based API as UIAlertController, making it a seamless drop-in replacement.
Highly configurable iOS Alert Views with custom content views
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Allows embedding any UIView as content via the alertViewContentView property and configuring colors, insets, and button styles through a centralized NYAlertViewControllerConfiguration object, as shown in the usage example.
Uses an action handler pattern identical to UIAlertController, making it easy to adopt for developers already comfortable with Apple's system alerts, with similar NYAlertAction setup.
Provides a simple API for adding text fields that matches UIAlertController's behavior, enabling interactive input within alerts without extra complexity.
Offers a choice between fade or slide animations, similar to UIAlertController's fade but with additional options for customized presentation effects.
Designed exclusively for UIKit and lacks native integration with SwiftUI, requiring extra bridging work for modern iOS apps using SwiftUI exclusively.
The README and included example project are primarily in Objective-C, which may be less accessible or helpful for Swift-focused developers seeking quick implementation.
Requires explicit setup for every visual aspect, such as colors and insets, which can be more time-consuming compared to libraries with pre-styled themes or system defaults.