A customizable popup dialog for iOS written in Swift, designed to replace UIAlertController's alert style.
PopupDialog is a Swift library for creating customizable popup dialogs in iOS apps. It provides a modern alternative to UIAlertController, allowing developers to design alerts with images, custom layouts, and advanced styling options. It solves the problem of limited customization in native iOS alert controllers.
iOS developers building apps that require branded, highly customizable alert dialogs beyond the standard UIAlertController capabilities.
Developers choose PopupDialog for its extensive theming system, smooth animations, and easy API that reduces boilerplate code while offering full control over dialog appearance and behavior.
A simple, customizable popup dialog for iOS written in Swift. Replaces UIAlertController alert style.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
The API is straightforward with minimal boilerplate, as shown in the example code for creating dialogs with just a few lines.
Fully themeable via UIAppearance for fonts, colors, shadows, and more, allowing consistent styling across an app without repetitive code.
Offers multiple transition styles like bounce, zoom, and fade, providing polished presentations that enhance user experience.
Supports dismissal via swipe or background tap, adding intuitive interaction options beyond standard button taps.
Works seamlessly in both Swift and Objective-C projects, as demonstrated in the README with example code for both languages.
If not using CocoaPods or Carthage, manual installation requires adding DynamicBlurView files separately, increasing setup complexity.
Enabling live blur for real-time background updates significantly increases CPU usage, as noted in the README, which can impact battery life.
Tied to UIKit and not compatible with SwiftUI, making it less ideal for modern iOS projects adopting declarative UI frameworks.
Changelog shows updates tied to Swift version jumps (e.g., Swift 5 support), which may require code adjustments and cause migration headaches.