Renamed `- (void)_show` method to `- (void)showInternal`. Apple's "Coding Guidelines for Cocoa" clearly state to "[…] avoid the use of the underscore character as a prefix meaning private in method names.", even more so: "Apple reserves the use of this convention."
Moved UI element initialization into their own (and thus overridable) class methods.
Blocks must be copied, not retained. Fixed.
Changed associated object keys to void pointers. No need for bridging. Guaranteed uniqueness. Free lunch. No fat.
Removed method `- (id)initAlertWithTitle…` to `- (id)initWithTitle…`. It's uncommon to have the init followed by the class name.
Added typedef for completion block.
Changed convenience methods of pattern `+ (PXAlertView *)showAlert…` to the more modern `+ (instancetype)showAlert…`.
Replaced `[PXAlertView alloc]` with `[self alloc]`.
Fixed small bug that was introduced in commit `c10ce4f`.
Formatting
Instance instead of class methods