PMAlertController
  • October 29, 2023

PMAlertController is a small library that allows you to substitute Apple’s uncustomizable UIAlertController, with a beautiful and totally customizable alert that you can use in your iOS app. Enjoy!

Features


  •  Header View
  •  Header Image (Optional)
  •  Title
  •  Description message
  •  Customizations: fonts, colors, dimensions & more
  •  1, 2 buttons (horizontally) or 3+ buttons (vertically)
  •  Closure when a button is pressed
  •  Text Fields support
  •  Similar implementation to UIAlertController
  •  Cocoapods
  •  Carthage
  •  Animation with UIKit Dynamics
  •  Objective-C compatibility
  •  Swift 4, Swift 4.2 & Swift 5 support
  •  Swift Package Manager

Requirements


  • iOS 9.0+
  • Xcode 10+

CocoaPods


CocoaPods is a dependency manager for Cocoa projects. You can install it with the following command:

$ gem install cocoapods

To integrate PMAlertController into your Xcode project using CocoaPods, specify it in your Podfile:

source ‘https://github.com/CocoaPods/Specs.git’
platform :ios, ‘9.0’
use_frameworks!

pod ‘PMAlertController’

Then, run the following command:

$ pod install

Carthage


Carthage is a decentralized dependency manager that builds your dependencies and provides you with binary frameworks.

You can install Carthage with Homebrew using the following command:

$ brew update
$ brew install carthage

To integrate PMAlertController into your Xcode project using Carthage, specify it in your Cartfile:

github “pmusolino/PMAlertController”

Run carthage update to build the framework and drag the built PMAlertController.framework into your Xcode project.

Manually


  1. Download and drop /Library folder in your project.
  2. Congratulations!

Usage


The usage is very similar to UIAlertControllerPMAlertController has two styles: Alert & Walkthrough.

Alert Style: with this style, the alert has the width of 270 points, like Apple’s UIAlertController.

Walkthrough Style: with walkthrough, the alert has the width of the screen minus 18 points from the left and the right bounds. This mode is intended to be used before authorization requests like the ones for location, push notifications and more.

Show a simple alert with two buttons and one textfield

//This code works with Swift 5

let alertVC = PMAlertController(title: “A Title”, description: “My Description”, image: UIImage(named: “img.png”), style: .alert)

alertVC.addAction(PMAlertAction(title: “Cancel”, style: .cancel, action: { () -> Void in
print(“Capture action Cancel”)
}))

alertVC.addAction(PMAlertAction(title: “OK”, style: .default, action: { () in
print(“Capture action OK”)
}))

alertVC.addTextField { (textField) in
textField?.placeholder = “Location…”
}

self.present(alertVC, animated: true, completion: nil)

Swift compatibility


GitHub


View Github

#alert #banner #dialog #model #popup #swift
YOU MIGHT ALSO LIKE...
CameraBackground

Features Both front and back camera supported. Flash modes: auto, on, off. Countdown timer. Tap to focus. Pinch to zoom. Usage  

DKCamera

Description A light weight & simple & easy camera for iOS by Swift. It uses CoreMotion framework to detect device orientation, so ...

HorizonSDK-iOS

Horizon SDK is a state of the art real-time video recording / photo shooting iOS library. Some of the features ...

LLSimpleCamera

LLSimpleCamera: A simple customizable camera - video recorder control LLSimpleCamera is a library for creating a customized camera - video ...

RSBarcodes_Swift

RSBarcodes allows you to read 1D and 2D barcodes using the metadata scanning capabilities introduced with iOS 7 and generate ...