├── Screenshots ├── fva0.png ├── fva1.png ├── fva2.png ├── fva3.png ├── fva4.png ├── fva5.png ├── fva6.png ├── fva0_th.png ├── fva1_th.png ├── fva2_th.png ├── fva3_th.png ├── fva4_th.png ├── fva5_th.png └── fva6_th.png ├── FVCustomAlertView ├── FVCustomAlertViewResources │ ├── 1.png │ ├── 2.png │ ├── 3.png │ ├── 4.png │ ├── 5.png │ ├── 6.png │ ├── 7.png │ ├── 8.png │ ├── 9.png │ ├── 10.png │ ├── 11.png │ ├── 12.png │ ├── 13.png │ ├── 14.png │ ├── 15.png │ ├── 16.png │ ├── 17.png │ ├── 18.png │ ├── 19.png │ ├── 20.png │ ├── 10@2x.png │ ├── 11@2x.png │ ├── 12@2x.png │ ├── 13@2x.png │ ├── 14@2x.png │ ├── 15@2x.png │ ├── 16@2x.png │ ├── 17@2x.png │ ├── 18@2x.png │ ├── 19@2x.png │ ├── 1@2x.png │ ├── 20@2x.png │ ├── 2@2x.png │ ├── 3@2x.png │ ├── 4@2x.png │ ├── 5@2x.png │ ├── 6@2x.png │ ├── 7@2x.png │ ├── 8@2x.png │ ├── 9@2x.png │ ├── cross.png │ ├── cross@2x.png │ ├── warning.png │ ├── checkmark.png │ ├── warning@2x.png │ └── checkmark@2x.png ├── FVCustomAlertView │ ├── FVCustomAlertView-Prefix.pch │ ├── FVCustomAlertView.h │ └── FVCustomAlertView.m └── FVCustomAlertView.xcodeproj │ └── project.pbxproj ├── FVCustomAlertView-Example ├── FVCustomAlertView-Example │ ├── DemoImages.xcassets │ │ ├── bg.imageset │ │ │ ├── bg.png │ │ │ ├── bg@2x.png │ │ │ └── Contents.json │ │ ├── wallpaper.imageset │ │ │ ├── wallpaper.png │ │ │ ├── wallpaper@2x.png │ │ │ └── Contents.json │ │ ├── AppIcon.appiconset │ │ │ └── Contents.json │ │ └── LaunchImage.launchimage │ │ │ └── Contents.json │ ├── FVAppDelegate.h │ ├── FVCustomAlertView-Example-Prefix.pch │ ├── main.m │ ├── FVViewController.h │ ├── FVCustomAlertView-Example-Info.plist │ ├── FVAppDelegate.m │ ├── FVViewController.m │ └── Base.lproj │ │ └── Main.storyboard ├── Podfile ├── Podfile.lock └── FVCustomAlertView-Example.xcodeproj │ ├── xcshareddata │ └── xcschemes │ │ └── FVCustomAlertView-Example.xcscheme │ └── project.pbxproj ├── .travis.yml ├── .gitignore ├── FVCustomAlertView.podspec ├── LICENSE └── README.md /Screenshots/fva0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/francisvm/FVCustomAlertView/HEAD/Screenshots/fva0.png -------------------------------------------------------------------------------- /Screenshots/fva1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/francisvm/FVCustomAlertView/HEAD/Screenshots/fva1.png -------------------------------------------------------------------------------- /Screenshots/fva2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/francisvm/FVCustomAlertView/HEAD/Screenshots/fva2.png -------------------------------------------------------------------------------- /Screenshots/fva3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/francisvm/FVCustomAlertView/HEAD/Screenshots/fva3.png -------------------------------------------------------------------------------- /Screenshots/fva4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/francisvm/FVCustomAlertView/HEAD/Screenshots/fva4.png -------------------------------------------------------------------------------- /Screenshots/fva5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/francisvm/FVCustomAlertView/HEAD/Screenshots/fva5.png -------------------------------------------------------------------------------- /Screenshots/fva6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/francisvm/FVCustomAlertView/HEAD/Screenshots/fva6.png -------------------------------------------------------------------------------- /Screenshots/fva0_th.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/francisvm/FVCustomAlertView/HEAD/Screenshots/fva0_th.png -------------------------------------------------------------------------------- /Screenshots/fva1_th.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/francisvm/FVCustomAlertView/HEAD/Screenshots/fva1_th.png -------------------------------------------------------------------------------- /Screenshots/fva2_th.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/francisvm/FVCustomAlertView/HEAD/Screenshots/fva2_th.png -------------------------------------------------------------------------------- /Screenshots/fva3_th.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/francisvm/FVCustomAlertView/HEAD/Screenshots/fva3_th.png -------------------------------------------------------------------------------- /Screenshots/fva4_th.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/francisvm/FVCustomAlertView/HEAD/Screenshots/fva4_th.png -------------------------------------------------------------------------------- /Screenshots/fva5_th.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/francisvm/FVCustomAlertView/HEAD/Screenshots/fva5_th.png -------------------------------------------------------------------------------- /Screenshots/fva6_th.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/francisvm/FVCustomAlertView/HEAD/Screenshots/fva6_th.png -------------------------------------------------------------------------------- /FVCustomAlertView/FVCustomAlertViewResources/1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/francisvm/FVCustomAlertView/HEAD/FVCustomAlertView/FVCustomAlertViewResources/1.png -------------------------------------------------------------------------------- /FVCustomAlertView/FVCustomAlertViewResources/2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/francisvm/FVCustomAlertView/HEAD/FVCustomAlertView/FVCustomAlertViewResources/2.png -------------------------------------------------------------------------------- /FVCustomAlertView/FVCustomAlertViewResources/3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/francisvm/FVCustomAlertView/HEAD/FVCustomAlertView/FVCustomAlertViewResources/3.png -------------------------------------------------------------------------------- /FVCustomAlertView/FVCustomAlertViewResources/4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/francisvm/FVCustomAlertView/HEAD/FVCustomAlertView/FVCustomAlertViewResources/4.png -------------------------------------------------------------------------------- /FVCustomAlertView/FVCustomAlertViewResources/5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/francisvm/FVCustomAlertView/HEAD/FVCustomAlertView/FVCustomAlertViewResources/5.png -------------------------------------------------------------------------------- /FVCustomAlertView/FVCustomAlertViewResources/6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/francisvm/FVCustomAlertView/HEAD/FVCustomAlertView/FVCustomAlertViewResources/6.png -------------------------------------------------------------------------------- /FVCustomAlertView/FVCustomAlertViewResources/7.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/francisvm/FVCustomAlertView/HEAD/FVCustomAlertView/FVCustomAlertViewResources/7.png -------------------------------------------------------------------------------- /FVCustomAlertView/FVCustomAlertViewResources/8.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/francisvm/FVCustomAlertView/HEAD/FVCustomAlertView/FVCustomAlertViewResources/8.png -------------------------------------------------------------------------------- /FVCustomAlertView/FVCustomAlertViewResources/9.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/francisvm/FVCustomAlertView/HEAD/FVCustomAlertView/FVCustomAlertViewResources/9.png -------------------------------------------------------------------------------- /FVCustomAlertView/FVCustomAlertViewResources/10.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/francisvm/FVCustomAlertView/HEAD/FVCustomAlertView/FVCustomAlertViewResources/10.png -------------------------------------------------------------------------------- /FVCustomAlertView/FVCustomAlertViewResources/11.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/francisvm/FVCustomAlertView/HEAD/FVCustomAlertView/FVCustomAlertViewResources/11.png -------------------------------------------------------------------------------- /FVCustomAlertView/FVCustomAlertViewResources/12.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/francisvm/FVCustomAlertView/HEAD/FVCustomAlertView/FVCustomAlertViewResources/12.png -------------------------------------------------------------------------------- /FVCustomAlertView/FVCustomAlertViewResources/13.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/francisvm/FVCustomAlertView/HEAD/FVCustomAlertView/FVCustomAlertViewResources/13.png -------------------------------------------------------------------------------- /FVCustomAlertView/FVCustomAlertViewResources/14.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/francisvm/FVCustomAlertView/HEAD/FVCustomAlertView/FVCustomAlertViewResources/14.png -------------------------------------------------------------------------------- /FVCustomAlertView/FVCustomAlertViewResources/15.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/francisvm/FVCustomAlertView/HEAD/FVCustomAlertView/FVCustomAlertViewResources/15.png -------------------------------------------------------------------------------- /FVCustomAlertView/FVCustomAlertViewResources/16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/francisvm/FVCustomAlertView/HEAD/FVCustomAlertView/FVCustomAlertViewResources/16.png -------------------------------------------------------------------------------- /FVCustomAlertView/FVCustomAlertViewResources/17.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/francisvm/FVCustomAlertView/HEAD/FVCustomAlertView/FVCustomAlertViewResources/17.png -------------------------------------------------------------------------------- /FVCustomAlertView/FVCustomAlertViewResources/18.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/francisvm/FVCustomAlertView/HEAD/FVCustomAlertView/FVCustomAlertViewResources/18.png -------------------------------------------------------------------------------- /FVCustomAlertView/FVCustomAlertViewResources/19.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/francisvm/FVCustomAlertView/HEAD/FVCustomAlertView/FVCustomAlertViewResources/19.png -------------------------------------------------------------------------------- /FVCustomAlertView/FVCustomAlertViewResources/20.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/francisvm/FVCustomAlertView/HEAD/FVCustomAlertView/FVCustomAlertViewResources/20.png -------------------------------------------------------------------------------- /FVCustomAlertView/FVCustomAlertViewResources/10@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/francisvm/FVCustomAlertView/HEAD/FVCustomAlertView/FVCustomAlertViewResources/10@2x.png -------------------------------------------------------------------------------- /FVCustomAlertView/FVCustomAlertViewResources/11@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/francisvm/FVCustomAlertView/HEAD/FVCustomAlertView/FVCustomAlertViewResources/11@2x.png -------------------------------------------------------------------------------- /FVCustomAlertView/FVCustomAlertViewResources/12@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/francisvm/FVCustomAlertView/HEAD/FVCustomAlertView/FVCustomAlertViewResources/12@2x.png -------------------------------------------------------------------------------- /FVCustomAlertView/FVCustomAlertViewResources/13@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/francisvm/FVCustomAlertView/HEAD/FVCustomAlertView/FVCustomAlertViewResources/13@2x.png -------------------------------------------------------------------------------- /FVCustomAlertView/FVCustomAlertViewResources/14@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/francisvm/FVCustomAlertView/HEAD/FVCustomAlertView/FVCustomAlertViewResources/14@2x.png -------------------------------------------------------------------------------- /FVCustomAlertView/FVCustomAlertViewResources/15@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/francisvm/FVCustomAlertView/HEAD/FVCustomAlertView/FVCustomAlertViewResources/15@2x.png -------------------------------------------------------------------------------- /FVCustomAlertView/FVCustomAlertViewResources/16@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/francisvm/FVCustomAlertView/HEAD/FVCustomAlertView/FVCustomAlertViewResources/16@2x.png -------------------------------------------------------------------------------- /FVCustomAlertView/FVCustomAlertViewResources/17@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/francisvm/FVCustomAlertView/HEAD/FVCustomAlertView/FVCustomAlertViewResources/17@2x.png -------------------------------------------------------------------------------- /FVCustomAlertView/FVCustomAlertViewResources/18@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/francisvm/FVCustomAlertView/HEAD/FVCustomAlertView/FVCustomAlertViewResources/18@2x.png -------------------------------------------------------------------------------- /FVCustomAlertView/FVCustomAlertViewResources/19@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/francisvm/FVCustomAlertView/HEAD/FVCustomAlertView/FVCustomAlertViewResources/19@2x.png -------------------------------------------------------------------------------- /FVCustomAlertView/FVCustomAlertViewResources/1@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/francisvm/FVCustomAlertView/HEAD/FVCustomAlertView/FVCustomAlertViewResources/1@2x.png -------------------------------------------------------------------------------- /FVCustomAlertView/FVCustomAlertViewResources/20@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/francisvm/FVCustomAlertView/HEAD/FVCustomAlertView/FVCustomAlertViewResources/20@2x.png -------------------------------------------------------------------------------- /FVCustomAlertView/FVCustomAlertViewResources/2@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/francisvm/FVCustomAlertView/HEAD/FVCustomAlertView/FVCustomAlertViewResources/2@2x.png -------------------------------------------------------------------------------- /FVCustomAlertView/FVCustomAlertViewResources/3@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/francisvm/FVCustomAlertView/HEAD/FVCustomAlertView/FVCustomAlertViewResources/3@2x.png -------------------------------------------------------------------------------- /FVCustomAlertView/FVCustomAlertViewResources/4@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/francisvm/FVCustomAlertView/HEAD/FVCustomAlertView/FVCustomAlertViewResources/4@2x.png -------------------------------------------------------------------------------- /FVCustomAlertView/FVCustomAlertViewResources/5@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/francisvm/FVCustomAlertView/HEAD/FVCustomAlertView/FVCustomAlertViewResources/5@2x.png -------------------------------------------------------------------------------- /FVCustomAlertView/FVCustomAlertViewResources/6@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/francisvm/FVCustomAlertView/HEAD/FVCustomAlertView/FVCustomAlertViewResources/6@2x.png -------------------------------------------------------------------------------- /FVCustomAlertView/FVCustomAlertViewResources/7@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/francisvm/FVCustomAlertView/HEAD/FVCustomAlertView/FVCustomAlertViewResources/7@2x.png -------------------------------------------------------------------------------- /FVCustomAlertView/FVCustomAlertViewResources/8@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/francisvm/FVCustomAlertView/HEAD/FVCustomAlertView/FVCustomAlertViewResources/8@2x.png -------------------------------------------------------------------------------- /FVCustomAlertView/FVCustomAlertViewResources/9@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/francisvm/FVCustomAlertView/HEAD/FVCustomAlertView/FVCustomAlertViewResources/9@2x.png -------------------------------------------------------------------------------- /FVCustomAlertView/FVCustomAlertViewResources/cross.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/francisvm/FVCustomAlertView/HEAD/FVCustomAlertView/FVCustomAlertViewResources/cross.png -------------------------------------------------------------------------------- /FVCustomAlertView/FVCustomAlertViewResources/cross@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/francisvm/FVCustomAlertView/HEAD/FVCustomAlertView/FVCustomAlertViewResources/cross@2x.png -------------------------------------------------------------------------------- /FVCustomAlertView/FVCustomAlertViewResources/warning.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/francisvm/FVCustomAlertView/HEAD/FVCustomAlertView/FVCustomAlertViewResources/warning.png -------------------------------------------------------------------------------- /FVCustomAlertView/FVCustomAlertViewResources/checkmark.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/francisvm/FVCustomAlertView/HEAD/FVCustomAlertView/FVCustomAlertViewResources/checkmark.png -------------------------------------------------------------------------------- /FVCustomAlertView/FVCustomAlertViewResources/warning@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/francisvm/FVCustomAlertView/HEAD/FVCustomAlertView/FVCustomAlertViewResources/warning@2x.png -------------------------------------------------------------------------------- /FVCustomAlertView/FVCustomAlertViewResources/checkmark@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/francisvm/FVCustomAlertView/HEAD/FVCustomAlertView/FVCustomAlertViewResources/checkmark@2x.png -------------------------------------------------------------------------------- /FVCustomAlertView-Example/FVCustomAlertView-Example/DemoImages.xcassets/bg.imageset/bg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/francisvm/FVCustomAlertView/HEAD/FVCustomAlertView-Example/FVCustomAlertView-Example/DemoImages.xcassets/bg.imageset/bg.png -------------------------------------------------------------------------------- /FVCustomAlertView-Example/Podfile: -------------------------------------------------------------------------------- 1 | # Uncomment this line to define a global platform for your project 2 | # platform :ios, "6.0" 3 | 4 | target "FVCustomAlertView-Example" do 5 | 6 | pod 'FVCustomAlertView' 7 | 8 | end 9 | 10 | -------------------------------------------------------------------------------- /FVCustomAlertView-Example/FVCustomAlertView-Example/DemoImages.xcassets/bg.imageset/bg@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/francisvm/FVCustomAlertView/HEAD/FVCustomAlertView-Example/FVCustomAlertView-Example/DemoImages.xcassets/bg.imageset/bg@2x.png -------------------------------------------------------------------------------- /FVCustomAlertView-Example/Podfile.lock: -------------------------------------------------------------------------------- 1 | PODS: 2 | - FVCustomAlertView (0.3.2) 3 | 4 | DEPENDENCIES: 5 | - FVCustomAlertView 6 | 7 | SPEC CHECKSUMS: 8 | FVCustomAlertView: ffb60d17125bebcd9c55dd356387e8a4db9c7d39 9 | 10 | COCOAPODS: 0.36.0.beta.2 11 | -------------------------------------------------------------------------------- /FVCustomAlertView-Example/FVCustomAlertView-Example/DemoImages.xcassets/wallpaper.imageset/wallpaper.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/francisvm/FVCustomAlertView/HEAD/FVCustomAlertView-Example/FVCustomAlertView-Example/DemoImages.xcassets/wallpaper.imageset/wallpaper.png -------------------------------------------------------------------------------- /FVCustomAlertView-Example/FVCustomAlertView-Example/DemoImages.xcassets/wallpaper.imageset/wallpaper@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/francisvm/FVCustomAlertView/HEAD/FVCustomAlertView-Example/FVCustomAlertView-Example/DemoImages.xcassets/wallpaper.imageset/wallpaper@2x.png -------------------------------------------------------------------------------- /.travis.yml: -------------------------------------------------------------------------------- 1 | language: objective-c 2 | xcode_workspace: FVCustomAlertView-Example/FVCustomAlertView-Example.xcworkspace 3 | xcode_scheme: FVCustomAlertView-Example 4 | xcode_sdk: iphonesimulator8.1 5 | podfile: FVCustomAlertView-Example/Podfile 6 | env: CODE_SIGNING_REQUIRED=NO 7 | -------------------------------------------------------------------------------- /FVCustomAlertView/FVCustomAlertView/FVCustomAlertView-Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header 3 | // 4 | // The contents of this file are implicitly included at the beginning of every source file. 5 | // 6 | 7 | #ifdef __OBJC__ 8 | #import 9 | #endif 10 | -------------------------------------------------------------------------------- /FVCustomAlertView-Example/FVCustomAlertView-Example/DemoImages.xcassets/bg.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x", 6 | "filename" : "bg.png" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "scale" : "2x", 11 | "filename" : "bg@2x.png" 12 | } 13 | ], 14 | "info" : { 15 | "version" : 1, 16 | "author" : "xcode" 17 | } 18 | } -------------------------------------------------------------------------------- /FVCustomAlertView-Example/FVCustomAlertView-Example/FVAppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // FVAppDelegate.h 3 | // FVCustomAlertView-Example 4 | // 5 | // Created by Francis Visoiu Mistrih on 06/08/2014. 6 | // Copyright (c) 2014 Francis Visoiu Mistrih. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface FVAppDelegate : UIResponder 12 | 13 | @property (strong, nonatomic) UIWindow *window; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /FVCustomAlertView-Example/FVCustomAlertView-Example/DemoImages.xcassets/wallpaper.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x", 6 | "filename" : "wallpaper.png" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "scale" : "2x", 11 | "filename" : "wallpaper@2x.png" 12 | } 13 | ], 14 | "info" : { 15 | "version" : 1, 16 | "author" : "xcode" 17 | } 18 | } -------------------------------------------------------------------------------- /FVCustomAlertView-Example/FVCustomAlertView-Example/FVCustomAlertView-Example-Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header 3 | // 4 | // The contents of this file are implicitly included at the beginning of every source file. 5 | // 6 | 7 | #import 8 | 9 | #ifndef __IPHONE_5_0 10 | #warning "This project uses features only available in iOS SDK 5.0 and later." 11 | #endif 12 | 13 | #ifdef __OBJC__ 14 | #import 15 | #import 16 | #endif 17 | -------------------------------------------------------------------------------- /FVCustomAlertView-Example/FVCustomAlertView-Example/main.m: -------------------------------------------------------------------------------- 1 | // 2 | // main.m 3 | // FVCustomAlertView-Example 4 | // 5 | // Created by Francis Visoiu Mistrih on 06/08/2014. 6 | // Copyright (c) 2014 Francis Visoiu Mistrih. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | #import "FVAppDelegate.h" 12 | 13 | int main(int argc, char * argv[]) 14 | { 15 | @autoreleasepool { 16 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([FVAppDelegate class])); 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # OS X 2 | .DS_Store 3 | 4 | # Xcode 5 | build/ 6 | *.pbxuser 7 | !default.pbxuser 8 | *.mode1v3 9 | !default.mode1v3 10 | *.mode2v3 11 | !default.mode2v3 12 | *.perspectivev3 13 | !default.perspectivev3 14 | xcuserdata 15 | *.xccheckout 16 | profile 17 | *.moved-aside 18 | DerivedData 19 | *.hmap 20 | *.ipa 21 | 22 | # Bundler 23 | .bundle 24 | 25 | # We recommend against adding the Pods directory to your .gitignore. However 26 | # you should judge for yourself, the pros and cons are mentioned at: 27 | # http://guides.cocoapods.org/using/using-cocoapods.html#should-i-ignore-the-pods-directory-in-source-control 28 | # 29 | Pods/ 30 | *.xcworkspace 31 | -------------------------------------------------------------------------------- /FVCustomAlertView-Example/FVCustomAlertView-Example/FVViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // FVViewController.h 3 | // FVCustomAlertView 4 | // 5 | // Created by Francis Visoiu Mistrih on 13/07/2014. 6 | // Copyright (c) 2014 Francis Visoiu Mistrih. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface FVViewController : UIViewController 12 | 13 | - (IBAction)loadingButtonPressed:(id)sender; 14 | - (IBAction)doneButtonPressed:(id)sender; 15 | - (IBAction)errorButtonPressed:(id)sender; 16 | - (IBAction)warningButtonPressed:(id)sender; 17 | - (IBAction)customButtonPressed:(id)sender; 18 | - (IBAction)bgCustomButtonPressed:(id)sender; 19 | 20 | 21 | @end 22 | -------------------------------------------------------------------------------- /FVCustomAlertView.podspec: -------------------------------------------------------------------------------- 1 | Pod::Spec.new do |s| 2 | s.name = "FVCustomAlertView" 3 | s.version = "0.3.3" 4 | s.summary = "An iOS custom alert view." 5 | s.description = <<-DESC 6 | FVCustomAlertView can display a custom alert, meant to replace the UIAlertView. 7 | DESC 8 | s.homepage = "https://github.com/thegameg/FVCustomAlertView" 9 | s.license = { :type => 'MIT', :file => 'LICENSE' } 10 | s.author = { 'Francis Visoiu Mistrih' => 'thegameg1@yahoo.com' } 11 | s.source = { :git => "https://github.com/thegameg/FVCustomAlertView.git", :tag => s.version.to_s } 12 | s.social_media_url = 'https://twitter.com/thegameg' 13 | 14 | s.platform = :ios, '8.0' 15 | s.requires_arc = true 16 | s.frameworks = "Foundation", "UIKit" 17 | 18 | s.source_files = 'FVCustomAlertView/FVCustomAlertView/*.{h,m}' 19 | s.public_header_files = 'FVCustomAlertView', 'FVCustomAlertView/**/*.h' 20 | s.resources = "FVCustomAlertView/FVCustomAlertViewResources/*.png" 21 | end 22 | 23 | -------------------------------------------------------------------------------- /FVCustomAlertView-Example/FVCustomAlertView-Example/DemoImages.xcassets/AppIcon.appiconset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "iphone", 5 | "size" : "29x29", 6 | "scale" : "2x" 7 | }, 8 | { 9 | "idiom" : "iphone", 10 | "size" : "40x40", 11 | "scale" : "2x" 12 | }, 13 | { 14 | "idiom" : "iphone", 15 | "size" : "60x60", 16 | "scale" : "2x" 17 | }, 18 | { 19 | "idiom" : "ipad", 20 | "size" : "29x29", 21 | "scale" : "1x" 22 | }, 23 | { 24 | "idiom" : "ipad", 25 | "size" : "29x29", 26 | "scale" : "2x" 27 | }, 28 | { 29 | "idiom" : "ipad", 30 | "size" : "40x40", 31 | "scale" : "1x" 32 | }, 33 | { 34 | "idiom" : "ipad", 35 | "size" : "40x40", 36 | "scale" : "2x" 37 | }, 38 | { 39 | "idiom" : "ipad", 40 | "size" : "76x76", 41 | "scale" : "1x" 42 | }, 43 | { 44 | "idiom" : "ipad", 45 | "size" : "76x76", 46 | "scale" : "2x" 47 | } 48 | ], 49 | "info" : { 50 | "version" : 1, 51 | "author" : "xcode" 52 | } 53 | } 54 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) 2014 Visoiu Mistrih Francis 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in 13 | all copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /FVCustomAlertView-Example/FVCustomAlertView-Example/DemoImages.xcassets/LaunchImage.launchimage/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "orientation" : "portrait", 5 | "idiom" : "iphone", 6 | "extent" : "full-screen", 7 | "minimum-system-version" : "7.0", 8 | "scale" : "2x" 9 | }, 10 | { 11 | "orientation" : "portrait", 12 | "idiom" : "iphone", 13 | "subtype" : "retina4", 14 | "extent" : "full-screen", 15 | "minimum-system-version" : "7.0", 16 | "scale" : "2x" 17 | }, 18 | { 19 | "orientation" : "portrait", 20 | "idiom" : "ipad", 21 | "extent" : "full-screen", 22 | "minimum-system-version" : "7.0", 23 | "scale" : "1x" 24 | }, 25 | { 26 | "orientation" : "landscape", 27 | "idiom" : "ipad", 28 | "extent" : "full-screen", 29 | "minimum-system-version" : "7.0", 30 | "scale" : "1x" 31 | }, 32 | { 33 | "orientation" : "portrait", 34 | "idiom" : "ipad", 35 | "extent" : "full-screen", 36 | "minimum-system-version" : "7.0", 37 | "scale" : "2x" 38 | }, 39 | { 40 | "orientation" : "landscape", 41 | "idiom" : "ipad", 42 | "extent" : "full-screen", 43 | "minimum-system-version" : "7.0", 44 | "scale" : "2x" 45 | } 46 | ], 47 | "info" : { 48 | "version" : 1, 49 | "author" : "xcode" 50 | } 51 | } 52 | -------------------------------------------------------------------------------- /FVCustomAlertView-Example/FVCustomAlertView-Example/FVCustomAlertView-Example-Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleDisplayName 8 | ${PRODUCT_NAME} 9 | CFBundleExecutable 10 | ${EXECUTABLE_NAME} 11 | CFBundleIdentifier 12 | com.francisvm.${PRODUCT_NAME:rfc1034identifier} 13 | CFBundleInfoDictionaryVersion 14 | 6.0 15 | CFBundleName 16 | ${PRODUCT_NAME} 17 | CFBundlePackageType 18 | APPL 19 | CFBundleShortVersionString 20 | 1.0 21 | CFBundleSignature 22 | ???? 23 | CFBundleVersion 24 | 1.0 25 | LSRequiresIPhoneOS 26 | 27 | UIMainStoryboardFile 28 | Main 29 | UIRequiredDeviceCapabilities 30 | 31 | armv7 32 | 33 | UISupportedInterfaceOrientations 34 | 35 | UIInterfaceOrientationPortrait 36 | UIInterfaceOrientationLandscapeLeft 37 | UIInterfaceOrientationLandscapeRight 38 | 39 | 40 | 41 | -------------------------------------------------------------------------------- /FVCustomAlertView-Example/FVCustomAlertView-Example/FVAppDelegate.m: -------------------------------------------------------------------------------- 1 | // 2 | // FVAppDelegate.m 3 | // FVCustomAlertView-Example 4 | // 5 | // Created by Francis Visoiu Mistrih on 06/08/2014. 6 | // Copyright (c) 2014 Francis Visoiu Mistrih. All rights reserved. 7 | // 8 | 9 | #import "FVAppDelegate.h" 10 | 11 | @implementation FVAppDelegate 12 | 13 | - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions 14 | { 15 | // Override point for customization after application launch. 16 | return YES; 17 | } 18 | 19 | - (void)applicationWillResignActive:(UIApplication *)application 20 | { 21 | // Sent when the application is about to move from active to inactive state. This can occur for certain types of temporary interruptions (such as an incoming phone call or SMS message) or when the user quits the application and it begins the transition to the background state. 22 | // Use this method to pause ongoing tasks, disable timers, and throttle down OpenGL ES frame rates. Games should use this method to pause the game. 23 | } 24 | 25 | - (void)applicationDidEnterBackground:(UIApplication *)application 26 | { 27 | // Use this method to release shared resources, save user data, invalidate timers, and store enough application state information to restore your application to its current state in case it is terminated later. 28 | // If your application supports background execution, this method is called instead of applicationWillTerminate: when the user quits. 29 | } 30 | 31 | - (void)applicationWillEnterForeground:(UIApplication *)application 32 | { 33 | // Called as part of the transition from the background to the inactive state; here you can undo many of the changes made on entering the background. 34 | } 35 | 36 | - (void)applicationDidBecomeActive:(UIApplication *)application 37 | { 38 | // Restart any tasks that were paused (or not yet started) while the application was inactive. If the application was previously in the background, optionally refresh the user interface. 39 | } 40 | 41 | - (void)applicationWillTerminate:(UIApplication *)application 42 | { 43 | // Called when the application is about to terminate. Save data if appropriate. See also applicationDidEnterBackground:. 44 | } 45 | 46 | @end 47 | -------------------------------------------------------------------------------- /FVCustomAlertView-Example/FVCustomAlertView-Example/FVViewController.m: -------------------------------------------------------------------------------- 1 | // 2 | // FVViewController.m 3 | // FVCustomAlertView 4 | // 5 | // Created by Francis Visoiu Mistrih on 13/07/2014. 6 | // Copyright (c) 2014 Francis Visoiu Mistrih. All rights reserved. 7 | // 8 | 9 | #import "FVViewController.h" 10 | #import "FVCustomAlertView.h" 11 | 12 | @interface FVViewController () 13 | 14 | @end 15 | 16 | @implementation FVViewController 17 | 18 | - (IBAction)loadingButtonPressed:(id)sender { 19 | [FVCustomAlertView showDefaultLoadingAlertOnView:self.view withTitle:@"Loading..." withBlur:YES allowTap:YES]; 20 | } 21 | 22 | - (IBAction)doneButtonPressed:(id)sender { 23 | [FVCustomAlertView showDefaultDoneAlertOnView:self.view withTitle:@"Done" withBlur:YES allowTap:YES]; 24 | } 25 | 26 | - (IBAction)errorButtonPressed:(id)sender { 27 | [FVCustomAlertView showDefaultErrorAlertOnView:self.view withTitle:@"Error" withBlur:YES allowTap:YES]; 28 | } 29 | 30 | - (IBAction)warningButtonPressed:(id)sender { 31 | [FVCustomAlertView showDefaultWarningAlertOnView:self.view withTitle:@"Be careful" withBlur:YES allowTap:YES]; 32 | } 33 | 34 | - (IBAction)customButtonPressed:(id)sender { 35 | UISwitch *sw = [[UISwitch alloc] init]; 36 | sw.on = YES; 37 | [FVCustomAlertView showAlertOnView:self.view withTitle:@"Do you want to recieve notifications from us?" titleColor:[UIColor whiteColor] width:120 height:140 blur:YES backgroundImage:nil backgroundColor:[UIColor blackColor] cornerRadius:20 shadowAlpha:0.2 alpha:0.8 contentView:sw type:FVAlertTypeCustom allowTap:YES]; 38 | } 39 | 40 | - (IBAction)bgCustomButtonPressed:(id)sender { 41 | UISegmentedControl *control = [[UISegmentedControl alloc] initWithItems:@[@"Default", @"Custom"]]; 42 | [control setSelectedSegmentIndex:0]; 43 | [control setTintColor:[UIColor whiteColor]]; 44 | 45 | UIButton *closeButton = [UIButton buttonWithType:UIButtonTypeSystem]; 46 | [closeButton setTintColor:[UIColor whiteColor]]; 47 | [closeButton setTitle:@"Done" forState:UIControlStateNormal]; 48 | [closeButton sizeToFit]; 49 | [closeButton addTarget:self action:@selector(close:) forControlEvents:UIControlEventTouchUpInside]; 50 | 51 | UIView *contentView = [[UIView alloc] init]; 52 | contentView.frame = CGRectMake(0, 5, 120, 120); 53 | [contentView addSubview:control]; 54 | [contentView addSubview:closeButton]; 55 | 56 | closeButton.frame = CGRectMake(contentView.frame.origin.x 57 | + contentView.frame.size.width/2 - closeButton.frame.size.width/2, control.frame.origin.y 58 | + control.frame.size.height + 5, closeButton.frame.size.width, closeButton.frame.size.height); 59 | 60 | 61 | [FVCustomAlertView showAlertOnView:self.view withTitle:@"Choose!" titleColor:[UIColor whiteColor] width:150 height:110 blur:YES backgroundImage:[UIImage imageNamed:@"bg"] backgroundColor:nil cornerRadius:10.0 shadowAlpha:0.4 alpha:0.9 contentView:contentView type:FVAlertTypeCustom allowTap:YES]; 62 | } 63 | 64 | - (void)close:(id)sender { 65 | [FVCustomAlertView hideAlertFromView:self.view fading:YES]; 66 | } 67 | 68 | @end 69 | -------------------------------------------------------------------------------- /FVCustomAlertView-Example/FVCustomAlertView-Example.xcodeproj/xcshareddata/xcschemes/FVCustomAlertView-Example.xcscheme: -------------------------------------------------------------------------------- 1 | 2 | 5 | 8 | 9 | 15 | 21 | 22 | 23 | 24 | 25 | 30 | 31 | 32 | 33 | 39 | 40 | 41 | 42 | 51 | 52 | 58 | 59 | 60 | 61 | 62 | 63 | 69 | 70 | 76 | 77 | 78 | 79 | 81 | 82 | 85 | 86 | 87 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # FVCustomAlertView 2 | [![CI Status](https://travis-ci.org/thegameg/FVCustomAlertView.svg?branch=master)](https://travis-ci.org/thegameg/FVCustomAlertView) 3 | [![Version](https://img.shields.io/cocoapods/v/FVCustomAlertView.svg?style=flat)](http://cocoadocs.org/docsets/FVCustomAlertView) 4 | [![License](https://img.shields.io/cocoapods/l/FVCustomAlertView.svg?style=flat)](http://cocoadocs.org/docsets/FVCustomAlertView) 5 | [![Platform](https://img.shields.io/cocoapods/p/FVCustomAlertView.svg?style=flat)](http://cocoadocs.org/docsets/FVCustomAlertView) 6 | 7 | Custom AlertView for iOS SDK. 8 | 9 | [![](https://raw.githubusercontent.com/thegameg/FVCustomAlertView/master/Screenshots/fva0_th.png)](https://raw.githubusercontent.com/thegameg/FVCustomAlertView/master/Screenshots/fva0.png) 10 | 11 | 12 | [![](https://raw.githubusercontent.com/thegameg/FVCustomAlertView/master/Screenshots/fva1_th.png)](https://raw.githubusercontent.com/thegameg/FVCustomAlertView/master/Screenshots/fva1.png) 13 | 14 | ## Usage 15 | 16 | To run the example project, clone the repo, and run `pod install` from the FVCustomAlertView-Example directory first. 17 | 18 | ## Requirements 19 | 20 | * iOS8+ project 21 | * ARC project 22 | 23 | ## How to install FVCustomAlertView 24 | 25 | ### CocoaPods 26 | FVCustomAlertView is available through [CocoaPods](http://cocoapods.org). To install 27 | it, simply add the following line to your Podfile: 28 | 29 | pod "FVCustomAlertView" 30 | 31 | ### Use FVCustomAlertView as a static library 32 | Drag the .xcodeproj file into your Xcode project and add it as a Target in your Build Phases. Don't forget to add libFVCustomAlertView.a in Link Binary With Library and set the -ObjC flag in Other Linker Flags. 33 | 34 | ### Manually add the files to your project 35 | 36 | Add the following files and folders to your iOS project. 37 | 38 | * FVCustomAlertView.h 39 | * FVCustomAlertView.m 40 | * FVCustomAlertViewResources/ 41 | 42 | ## How to use FVCustomAlertView 43 | 44 | FVCustomAlertView comes with 4 default modes and a cutom mode. 45 | The default modes are : (make sure you try them in the example app) 46 | 47 | * Loading 48 | 49 | [![](https://raw.githubusercontent.com/thegameg/FVCustomAlertView/master/Screenshots/fva1_th.png)](https://raw.githubusercontent.com/thegameg/FVCustomAlertView/master/Screenshots/fva1.png) 50 | ```objective-c 51 | [FVCustomAlertView showDefaultLoadingAlertOnView:self.view withTitle:@"Loading..." withBlur:YES allowTap:YES]; 52 | ``` 53 | 54 | * Done 55 | 56 | [![](https://raw.githubusercontent.com/thegameg/FVCustomAlertView/master/Screenshots/fva2_th.png)](https://raw.githubusercontent.com/thegameg/FVCustomAlertView/master/Screenshots/fva2.png) 57 | ```objective-c 58 | [FVCustomAlertView showDefaultDoneAlertOnView:self.view withTitle:@"Done" withBlur:YES allowTap:YES]; 59 | ``` 60 | 61 | * Error 62 | 63 | [![](https://raw.githubusercontent.com/thegameg/FVCustomAlertView/master/Screenshots/fva3_th.png)](https://raw.githubusercontent.com/thegameg/FVCustomAlertView/master/Screenshots/fva3.png) 64 | ```objective-c 65 | [FVCustomAlertView showDefaultErrorAlertOnView:self.view withTitle:@"Error" withBlur:YES allowTap:YES]; 66 | ``` 67 | 68 | * Warning 69 | 70 | [![](https://raw.githubusercontent.com/thegameg/FVCustomAlertView/master/Screenshots/fva4_th.png)](https://raw.githubusercontent.com/thegameg/FVCustomAlertView/master/Screenshots/fva4.png) 71 | ```objective-c 72 | [FVCustomAlertView showDefaultWarningAlertOnView:self.view withTitle:@"Be careful" withBlur:YES allowTap:YES]; 73 | ``` 74 | 75 | * Custom 76 | 77 | [![](https://raw.githubusercontent.com/thegameg/FVCustomAlertView/master/Screenshots/fva5_th.png)](https://raw.githubusercontent.com/thegameg/FVCustomAlertView/master/Screenshots/fva5.png) 78 | 79 | [![](https://raw.githubusercontent.com/thegameg/FVCustomAlertView/master/Screenshots/fva6_th.png)](https://raw.githubusercontent.com/thegameg/FVCustomAlertView/master/Screenshots/fva6.png) 80 | ```objective-c 81 | UIView *sw = [[UISwitch alloc] init]; 82 | [FVCustomAlertView showAlertOnView:self.view withTitle:@"Do you want to recieve notifications from us?"titleColor:[UIColor whiteColor] width:120 height:140 blur:YES backgroundImage:nil backgroundColor:[UIColor blackColor] cornerRadius:20 shadowAlpha:0.2 alpha:0.8 contentView:sw type:FVAlertTypeCustom allowTap:YES]; 83 | ``` 84 | 85 | #### v.0.2 86 | ###### Current view 87 | The current view can be retrieved using the method 88 | ```objective-c 89 | + (UIView *)currentView; 90 | ``` 91 | 92 | #### v.0.3 93 | * Added blur option, using `UIBlurEffect`. *iOS8+ only*. 94 | * Add tap to dismiss parameter 95 | 96 | 97 | ## Author 98 | 99 | Francis Visoiu Mistrih 100 | http://francisvm.com/ 101 | 102 | thegameg1@yahoo.com 103 | 104 | ## License 105 | 106 | This code is distributed under the terms and conditions of the [MIT license](LICENSE). 107 | -------------------------------------------------------------------------------- /FVCustomAlertView/FVCustomAlertView/FVCustomAlertView.h: -------------------------------------------------------------------------------- 1 | // 2 | // FVCustomAlertView.h 3 | // FVCustomAlertView 4 | // 5 | // Created by Francis Visoiu Mistrih on 13/07/2014. 6 | 7 | // This code is distributed under the terms and conditions of the MIT license. 8 | 9 | // Copyright (c) 2014 Francis Visoiu Mistrih. 10 | // 11 | // Permission is hereby granted, free of charge, to any person obtaining a copy 12 | // of this software and associated documentation files (the "Software"), to deal 13 | // in the Software without restriction, including without limitation the rights 14 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 15 | // copies of the Software, and to permit persons to whom the Software is 16 | // furnished to do so, subject to the following conditions: 17 | // 18 | // The above copyright notice and this permission notice shall be included in 19 | // all copies or substantial portions of the Software. 20 | // 21 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 22 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 23 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 24 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 25 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 26 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 27 | // THE SOFTWARE. 28 | 29 | #import 30 | 31 | typedef enum { 32 | /** A view with a UIActivityIndicator and "Loading..." title. */ 33 | FVAlertTypeLoading, 34 | /** A view with a checkmark and "Done" title. */ 35 | FVAlertTypeDone, 36 | /** A view with a cross and "Error" title. */ 37 | FVAlertTypeError, 38 | /** A view with an exclamation point and "Warning" title. */ 39 | FVAlertTypeWarning, 40 | /** A view with a background shadow. */ 41 | FVAlertTypeCustom, 42 | } FVAlertType; 43 | 44 | /** 45 | * Displays a custom alert view. It can contain either a title or a custom UIView 46 | * The view is customisable and has 4 default modes: 47 | * - FVAlertTypeLoading - displays a UIActivityIndicator 48 | * - FVAlertTypeDone/Error/Warning - displays a checkmark/cross/exclamation point 49 | * - FVAlertTypeCustom - lets the user to customise the view 50 | */ 51 | 52 | @interface FVCustomAlertView : UIView 53 | 54 | /** 55 | * Getter to the current FVCustomAlertView displayed 56 | * If no alert view is displayed on the screen, the result will be nil. 57 | * @return the current FVCustomAlertView 58 | */ 59 | + (UIView *)currentView; 60 | 61 | /** 62 | * Creates a new view and adds it to the view. Use hideAlertFromView to hide it. 63 | * Adds the view on top of all of the views. 64 | * Can't create more than one view at a time. 65 | * @param view The view that the alertView will be added to 66 | * @param title The title shown on the top of the alert view 67 | * @param titleColor The title text color 68 | * @param width The width of the view 69 | * @param height The height of the view 70 | * @param backgroundImage If set, will set the background as a tiled image. Background color will be unavalible. 71 | * @param blur If set, tbe background will have a blur effect 72 | * @param backgroundColor Color of the background. Used if the image is not set. 73 | * @param cornerRadius The radius of the rounded corners 74 | * @param shadowAlpha The background shadow opacity 75 | * @param alpha The opacity of the alert view 76 | * @param contentView The content of the view. Can be nil and choose a special type. Can be filled with a UIView or other derived classes. 77 | * @param type 78 | * @param tap Allow the user to tap to dismiss 79 | */ 80 | + (void)showAlertOnView:(UIView *)view 81 | withTitle:(NSString *)title 82 | titleColor:(UIColor *)titleColor 83 | width:(CGFloat)width 84 | height:(CGFloat)height 85 | blur:(BOOL)blur 86 | backgroundImage:(UIImage *)backgroundImage 87 | backgroundColor:(UIColor *)backgroundColor 88 | cornerRadius:(CGFloat)cornerRadius 89 | shadowAlpha:(CGFloat)shadowAlpha 90 | alpha:(CGFloat)alpha 91 | contentView:(UIView *)contentView 92 | type:(FVAlertType)type 93 | allowTap:(BOOL)tap; 94 | 95 | /** 96 | * Creates a default loading view 97 | * with the activity indicator from pictures 1.png 2.png...20.png 98 | * @param view The view that the alertView will be added to 99 | * @param title The title shown on the top of the alert view 100 | * @param blur If set, tbe background will have a blur effect 101 | * @param tap Allow the user to tap to dismiss 102 | */ 103 | + (void)showDefaultLoadingAlertOnView:(UIView *)view withTitle:(NSString *)title withBlur:(BOOL)blur allowTap:(BOOL)tap; 104 | 105 | /** 106 | * Creates a default done view 107 | * with a checkmark and a title 108 | * @param view The view that the alertView will be added to 109 | * @param title The title shown on the top of the alert view 110 | * @param blur If set, tbe background will have a blur effect 111 | * @param tap Allow the user to tap to dismiss 112 | */ 113 | + (void)showDefaultDoneAlertOnView:(UIView *)view withTitle:(NSString *)title withBlur:(BOOL)blur allowTap:(BOOL)tap; 114 | 115 | /** 116 | * Creates a default done view 117 | * with a cross (X) and a title 118 | * @param view The view that the alertView will be added to 119 | * @param title The title shown on the top of the alert view 120 | * @param blur If set, tbe background will have a blur effect 121 | * @param tap Allow the user to tap to dismiss 122 | */ 123 | + (void)showDefaultErrorAlertOnView:(UIView *)view withTitle:(NSString *)title withBlur:(BOOL)blur allowTap:(BOOL)tap; 124 | 125 | /** 126 | * Creates a default done view 127 | * with an exclamation point (!) and a title 128 | * @param view The view that the alertView will be added to 129 | * @param title The title shown on the top of the alert view 130 | * @param blur If set, tbe background will have a blur effect 131 | * @param tap Allow the user to tap to dismiss 132 | */ 133 | + (void)showDefaultWarningAlertOnView:(UIView *)view withTitle:(NSString *)title withBlur:(BOOL)blur allowTap:(BOOL)tap; 134 | 135 | /** 136 | * Hides the active view on the specified view. 137 | * @param view The view that the alertView is already added to 138 | * @param fading If set to YES, an animation will perform the hiding of the view as a fading effect. 139 | */ 140 | + (void)hideAlertFromView:(UIView *)view fading:(BOOL)fading; 141 | 142 | @end 143 | -------------------------------------------------------------------------------- /FVCustomAlertView/FVCustomAlertView/FVCustomAlertView.m: -------------------------------------------------------------------------------- 1 | // 2 | // FVCustomAlertView.m 3 | // FVCustomAlertView 4 | // 5 | // Created by Francis Visoiu Mistrih on 13/07/2014. 6 | // Copyright (c) 2014 Francis Visoiu Mistrih. All rights reserved. 7 | // 8 | 9 | #import "FVCustomAlertView.h" 10 | 11 | static const NSInteger kInsetValue = 6; 12 | static const NSUInteger kFinalViewTag = 1337; 13 | static const NSUInteger kAlertViewTag = 1338; 14 | static const CGFloat kFadeOutDuration = 0.5f; 15 | static const CGFloat kFadeInDuration = 0.2f; 16 | static const CGFloat kActivityIndicatorSize = 50; 17 | static const CGFloat kOtherIconsSize = 30; 18 | 19 | @interface FVCustomAlertView () 20 | 21 | + (NSArray *)setupCustomActivityIndicator; 22 | + (UIView *)contentViewFromType:(FVAlertType)type; 23 | + (void)fadeOutView:(UIView *)view completion:(void (^)(BOOL finished))completion; 24 | + (void)hideAlertByTap:(UITapGestureRecognizer *)sender; 25 | 26 | @end 27 | 28 | static UIView *currentView = nil; 29 | 30 | @implementation FVCustomAlertView 31 | 32 | + (UIView *)currentView 33 | { 34 | return currentView; 35 | } 36 | 37 | + (void)showAlertOnView:(UIView *)view 38 | withTitle:(NSString *)title 39 | titleColor:(UIColor *)titleColor 40 | width:(CGFloat)width 41 | height:(CGFloat)height 42 | blur:(BOOL)blur 43 | backgroundImage:(UIImage *)backgroundImage 44 | backgroundColor:(UIColor *)backgroundColor 45 | cornerRadius:(CGFloat)cornerRadius 46 | shadowAlpha:(CGFloat)shadowAlpha 47 | alpha:(CGFloat)alpha 48 | contentView:(UIView *)contentView 49 | type:(FVAlertType)type 50 | allowTap:(BOOL)tap 51 | { 52 | if ([view viewWithTag:kFinalViewTag]) { 53 | //don't allow 2 alerts on the same view 54 | NSLog(@"Can't add two FVCustomAlertViews on the same view. Hide the current view first."); 55 | return; 56 | } 57 | 58 | //get window size and position 59 | CGRect windowRect = [[UIScreen mainScreen] bounds]; 60 | 61 | //create the final view with a special tag 62 | UIView *resultView = [[UIView alloc] initWithFrame:windowRect]; 63 | resultView.tag = kFinalViewTag; //set tag to retrieve later 64 | resultView.alpha = 0.0f; 65 | 66 | if (blur) { 67 | UIVisualEffect *blurEffect = [UIBlurEffect effectWithStyle:UIBlurEffectStyleDark]; 68 | 69 | UIVisualEffectView *visualEffectView = [[UIVisualEffectView alloc] initWithEffect:blurEffect]; 70 | visualEffectView.frame = windowRect; 71 | [resultView addSubview:visualEffectView]; 72 | } 73 | 74 | //create shadow view by adding a black background with custom opacity 75 | UIView *shadowView = [[UIView alloc] initWithFrame:windowRect]; 76 | shadowView.backgroundColor = [UIColor blackColor]; 77 | shadowView.alpha = shadowAlpha; 78 | [resultView addSubview:shadowView]; 79 | 80 | //create the main alert view centered 81 | //with custom width and height 82 | //and custom background 83 | //and custom corner radius 84 | //and custom opacity 85 | UIView *alertView = [[UIView alloc] initWithFrame:CGRectMake(windowRect.size.width/2 - width/2, 86 | windowRect.size.height/2 - height/2, 87 | width, height)]; 88 | alertView.tag = kAlertViewTag; //set tag to retrieve later 89 | 90 | //set background color 91 | //if a background image is used, use the image instead. 92 | alertView.backgroundColor = backgroundColor; 93 | if (backgroundImage) { 94 | alertView.backgroundColor = [[UIColor alloc] initWithPatternImage:backgroundImage]; 95 | } 96 | alertView.layer.cornerRadius = cornerRadius; 97 | alertView.alpha = alpha; 98 | 99 | //create the title label centered with multiple lines 100 | //and custom color 101 | UILabel *titleLabel = [[UILabel alloc] init]; 102 | titleLabel.text = title; 103 | titleLabel.textAlignment = NSTextAlignmentCenter; 104 | titleLabel.textColor = titleColor; 105 | 106 | //set the number of lines to 0 (unlimited) 107 | //set a maximum size to the label 108 | //then get the size that fits the maximum size 109 | titleLabel.numberOfLines = 0; 110 | CGSize requiredSize = [titleLabel sizeThatFits:CGSizeMake(width - kInsetValue, height - kInsetValue)]; 111 | titleLabel.frame = CGRectMake(width/2 - requiredSize.width / 2, kInsetValue, requiredSize.width, requiredSize.height); 112 | [alertView addSubview:titleLabel]; 113 | 114 | //check wether the alert is of custom type or not 115 | //if it is, set the custom view 116 | UIView *content = type == FVAlertTypeCustom ? contentView : [self contentViewFromType:type]; 117 | 118 | content.frame = CGRectApplyAffineTransform(content.frame, CGAffineTransformMakeTranslation(width/2 - content.frame.size.width/2, titleLabel.frame.origin.y + titleLabel.frame.size.height + kInsetValue)); 119 | 120 | [alertView addSubview:content]; 121 | 122 | [resultView addSubview:alertView]; 123 | 124 | if (tap) { 125 | //tap the alert view to hide and remove it from the superview 126 | UITapGestureRecognizer *tapGesture = [[UITapGestureRecognizer alloc] initWithTarget:[FVCustomAlertView class] action:@selector(hideAlertByTap:)]; 127 | tapGesture.numberOfTapsRequired = 1; 128 | tapGesture.numberOfTouchesRequired = 1; 129 | [resultView addGestureRecognizer:tapGesture]; 130 | } 131 | 132 | [view addSubview:resultView]; 133 | [self fadeInView:resultView completion:nil]; 134 | currentView = view; 135 | } 136 | 137 | + (void)showDefaultLoadingAlertOnView:(UIView *)view withTitle:(NSString *)title withBlur:(BOOL)blur allowTap:(BOOL)tap { 138 | [self showAlertOnView:view 139 | withTitle:title 140 | titleColor:[UIColor whiteColor] 141 | width:100.0 142 | height:100.0 143 | blur:blur 144 | backgroundImage:nil 145 | backgroundColor:[UIColor blackColor] 146 | cornerRadius:10.0 147 | shadowAlpha:0.1 148 | alpha:0.8 149 | contentView:nil 150 | type:FVAlertTypeLoading 151 | allowTap:tap]; 152 | } 153 | 154 | + (void)showDefaultDoneAlertOnView:(UIView *)view withTitle:(NSString *)title withBlur:(BOOL)blur allowTap:(BOOL)tap { 155 | [self showAlertOnView:view 156 | withTitle:title 157 | titleColor:[UIColor whiteColor] 158 | width:100.0 159 | height:100.0 160 | blur:blur 161 | backgroundImage:nil 162 | backgroundColor:[UIColor blackColor] 163 | cornerRadius:10.0 164 | shadowAlpha:0.1 165 | alpha:0.8 166 | contentView:nil 167 | type:FVAlertTypeDone 168 | allowTap:tap]; 169 | } 170 | 171 | + (void)showDefaultErrorAlertOnView:(UIView *)view withTitle:(NSString *)title withBlur:(BOOL)blur allowTap:(BOOL)tap { 172 | [self showAlertOnView:view 173 | withTitle:title 174 | titleColor:[UIColor whiteColor] 175 | width:100.0 176 | height:100.0 177 | blur:blur 178 | backgroundImage:nil 179 | backgroundColor:[UIColor blackColor] 180 | cornerRadius:10.0 181 | shadowAlpha:0.1 182 | alpha:0.8 183 | contentView:nil 184 | type:FVAlertTypeError 185 | allowTap:tap]; 186 | } 187 | 188 | + (void)showDefaultWarningAlertOnView:(UIView *)view withTitle:(NSString *)title withBlur:(BOOL)blur allowTap:(BOOL)tap { 189 | [self showAlertOnView:view 190 | withTitle:title 191 | titleColor:[UIColor whiteColor] 192 | width:100.0 193 | height:100.0 194 | blur:blur 195 | backgroundImage:nil 196 | backgroundColor:[UIColor blackColor] 197 | cornerRadius:10.0 198 | shadowAlpha:0.1 199 | alpha:0.8 200 | contentView:nil 201 | type:FVAlertTypeWarning 202 | allowTap:tap]; 203 | } 204 | 205 | + (NSArray *)setupCustomActivityIndicator { 206 | NSMutableArray *array = [NSMutableArray array]; 207 | //iterate through all the images and add it to the array for the animation 208 | for (int i = 1; i <= 20; i++) { 209 | // Use imageWithContentsOfFile to avoid useless caching and memory usage 210 | NSString *file = [[NSBundle mainBundle] pathForResource:[NSString stringWithFormat:@"%d",i] ofType:@"png"]; 211 | UIImage *image = [UIImage imageWithContentsOfFile:file]; 212 | [array addObject:image]; 213 | } 214 | return array; 215 | } 216 | 217 | + (UIView *)contentViewFromType:(FVAlertType)type { 218 | UIImageView *content = [[UIImageView alloc] init]; 219 | NSString *file = @""; 220 | //generate default content views based on the type of the alert 221 | switch (type) { 222 | case FVAlertTypeLoading: 223 | { 224 | content.frame = CGRectMake(0, 0, kActivityIndicatorSize, kActivityIndicatorSize); 225 | content.animationDuration = 0.7; 226 | content.animationImages = [self setupCustomActivityIndicator]; 227 | [content startAnimating]; 228 | } 229 | break; 230 | case FVAlertTypeDone: 231 | { 232 | content.frame = CGRectMake(0, kInsetValue, kOtherIconsSize, kOtherIconsSize); 233 | file = [[NSBundle mainBundle] pathForResource:@"checkmark" ofType:@"png"]; 234 | } 235 | break; 236 | case FVAlertTypeError: 237 | { 238 | content.frame = CGRectMake(0, kInsetValue, kOtherIconsSize, kOtherIconsSize); 239 | file = [[NSBundle mainBundle] pathForResource:@"cross" ofType:@"png"]; 240 | } 241 | break; 242 | case FVAlertTypeWarning: 243 | { 244 | content.frame = CGRectMake(0, kInsetValue, kOtherIconsSize, kOtherIconsSize); 245 | file = [[NSBundle mainBundle] pathForResource:@"warning" ofType:@"png"]; 246 | } 247 | break; 248 | default: 249 | //FVAlertTypeCustom never reached 250 | break; 251 | } 252 | 253 | content.image = [UIImage imageWithContentsOfFile:file]; 254 | return content; 255 | } 256 | 257 | + (void)fadeInView:(UIView *)view completion:(void (^)(BOOL finished))completion { 258 | [UIView animateWithDuration:kFadeInDuration 259 | delay:0.0 260 | options:UIViewAnimationOptionCurveEaseIn 261 | animations:^{ 262 | [view setAlpha:1.0]; 263 | } 264 | completion:completion]; 265 | } 266 | 267 | + (void)fadeOutView:(UIView *)view completion:(void (^)(BOOL finished))completion { 268 | [UIView animateWithDuration:kFadeOutDuration 269 | delay:0.0 270 | options:UIViewAnimationOptionCurveEaseOut 271 | animations:^{ 272 | [view setAlpha:0.0]; 273 | } 274 | completion:completion]; 275 | } 276 | 277 | + (void)hideAlertFromView:(UIView *)view fading:(BOOL)fading { 278 | if (fading) { 279 | [self fadeOutView:[view viewWithTag:kFinalViewTag] completion:^(BOOL finished) { 280 | [[view viewWithTag:kFinalViewTag] removeFromSuperview]; 281 | }]; 282 | } else { 283 | [[view viewWithTag:kFinalViewTag] removeFromSuperview]; 284 | } 285 | currentView = nil; 286 | } 287 | 288 | + (void)hideAlertByTap:(UITapGestureRecognizer *)sender { 289 | //fade out and then remove from superview 290 | [self fadeOutView:sender.view 291 | completion:^(BOOL finished) { 292 | [[sender.view viewWithTag:kFinalViewTag] removeFromSuperview]; 293 | currentView = nil; 294 | }]; 295 | } 296 | 297 | @end 298 | -------------------------------------------------------------------------------- /FVCustomAlertView-Example/FVCustomAlertView-Example/Base.lproj/Main.storyboard: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 34 | 45 | 56 | 67 | 78 | 89 | 90 | 91 | 92 | 93 | 94 | 95 | 96 | 97 | 98 | 99 | 100 | 101 | 102 | 103 | 104 | 105 | 106 | 107 | 108 | 109 | 110 | 111 | 112 | 113 | 114 | 115 | 116 | 117 | 118 | 119 | 120 | 121 | 122 | 123 | 124 | 125 | 126 | 127 | 128 | 129 | 130 | 131 | 132 | 133 | 134 | 135 | 136 | -------------------------------------------------------------------------------- /FVCustomAlertView-Example/FVCustomAlertView-Example.xcodeproj/project.pbxproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | archiveVersion 6 | 1 7 | classes 8 | 9 | objectVersion 10 | 46 11 | objects 12 | 13 | 03DE72E8E1A644B1B13B9339 14 | 15 | fileRef 16 | 258401540CF94FF8B6D76800 17 | isa 18 | PBXBuildFile 19 | 20 | 258401540CF94FF8B6D76800 21 | 22 | explicitFileType 23 | archive.ar 24 | includeInIndex 25 | 0 26 | isa 27 | PBXFileReference 28 | path 29 | libPods-FVCustomAlertView-Example.a 30 | sourceTree 31 | BUILT_PRODUCTS_DIR 32 | 33 | 394E252CAFC24A7268699FA7 34 | 35 | includeInIndex 36 | 1 37 | isa 38 | PBXFileReference 39 | lastKnownFileType 40 | text.xcconfig 41 | name 42 | Pods-FVCustomAlertView-Example.debug.xcconfig 43 | path 44 | Pods/Target Support Files/Pods-FVCustomAlertView-Example/Pods-FVCustomAlertView-Example.debug.xcconfig 45 | sourceTree 46 | <group> 47 | 48 | 42C30B026D830169D839D5F7 49 | 50 | includeInIndex 51 | 1 52 | isa 53 | PBXFileReference 54 | lastKnownFileType 55 | text.xcconfig 56 | name 57 | Pods-FVCustomAlertView-Example.release.xcconfig 58 | path 59 | Pods/Target Support Files/Pods-FVCustomAlertView-Example/Pods-FVCustomAlertView-Example.release.xcconfig 60 | sourceTree 61 | <group> 62 | 63 | 430A58411EDA484E9BB01E03 64 | 65 | buildActionMask 66 | 2147483647 67 | files 68 | 69 | inputPaths 70 | 71 | isa 72 | PBXShellScriptBuildPhase 73 | name 74 | Check Pods Manifest.lock 75 | outputPaths 76 | 77 | runOnlyForDeploymentPostprocessing 78 | 0 79 | shellPath 80 | /bin/sh 81 | shellScript 82 | diff "${PODS_ROOT}/../Podfile.lock" "${PODS_ROOT}/Manifest.lock" > /dev/null 83 | if [[ $? != 0 ]] ; then 84 | cat << EOM 85 | error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation. 86 | EOM 87 | exit 1 88 | fi 89 | 90 | showEnvVarsInLog 91 | 0 92 | 93 | B5B0D2DB77034EEEA87FE84D 94 | 95 | buildActionMask 96 | 2147483647 97 | files 98 | 99 | inputPaths 100 | 101 | isa 102 | PBXShellScriptBuildPhase 103 | name 104 | Copy Pods Resources 105 | outputPaths 106 | 107 | runOnlyForDeploymentPostprocessing 108 | 0 109 | shellPath 110 | /bin/sh 111 | shellScript 112 | "${SRCROOT}/Pods/Target Support Files/Pods-FVCustomAlertView-Example/Pods-FVCustomAlertView-Example-resources.sh" 113 | 114 | showEnvVarsInLog 115 | 0 116 | 117 | D228BD831992D1E6004BB7D8 118 | 119 | children 120 | 121 | D228BD951992D1E6004BB7D8 122 | D228BD8E1992D1E6004BB7D8 123 | D228BD8D1992D1E6004BB7D8 124 | F310DB1AEE3BD245F31828B3 125 | 126 | isa 127 | PBXGroup 128 | sourceTree 129 | <group> 130 | 131 | D228BD841992D1E6004BB7D8 132 | 133 | attributes 134 | 135 | CLASSPREFIX 136 | FV 137 | LastUpgradeCheck 138 | 0510 139 | ORGANIZATIONNAME 140 | Francis Visoiu Mistrih 141 | 142 | buildConfigurationList 143 | D228BD871992D1E6004BB7D8 144 | compatibilityVersion 145 | Xcode 3.2 146 | developmentRegion 147 | English 148 | hasScannedForEncodings 149 | 0 150 | isa 151 | PBXProject 152 | knownRegions 153 | 154 | en 155 | Base 156 | 157 | mainGroup 158 | D228BD831992D1E6004BB7D8 159 | productRefGroup 160 | D228BD8D1992D1E6004BB7D8 161 | projectDirPath 162 | 163 | projectReferences 164 | 165 | projectRoot 166 | 167 | targets 168 | 169 | D228BD8B1992D1E6004BB7D8 170 | 171 | 172 | D228BD871992D1E6004BB7D8 173 | 174 | buildConfigurations 175 | 176 | D228BDBC1992D1E7004BB7D8 177 | D228BDBD1992D1E7004BB7D8 178 | 179 | defaultConfigurationIsVisible 180 | 0 181 | defaultConfigurationName 182 | Release 183 | isa 184 | XCConfigurationList 185 | 186 | D228BD881992D1E6004BB7D8 187 | 188 | buildActionMask 189 | 2147483647 190 | files 191 | 192 | D228BDA01992D1E6004BB7D8 193 | D228BD9C1992D1E6004BB7D8 194 | D228BDA61992D1E6004BB7D8 195 | 196 | isa 197 | PBXSourcesBuildPhase 198 | runOnlyForDeploymentPostprocessing 199 | 0 200 | 201 | D228BD891992D1E6004BB7D8 202 | 203 | buildActionMask 204 | 2147483647 205 | files 206 | 207 | D228BD941992D1E6004BB7D8 208 | D228BD901992D1E6004BB7D8 209 | 03DE72E8E1A644B1B13B9339 210 | 211 | isa 212 | PBXFrameworksBuildPhase 213 | runOnlyForDeploymentPostprocessing 214 | 0 215 | 216 | D228BD8A1992D1E6004BB7D8 217 | 218 | buildActionMask 219 | 2147483647 220 | files 221 | 222 | D228BDC51992D2E4004BB7D8 223 | D228BDA31992D1E6004BB7D8 224 | 225 | isa 226 | PBXResourcesBuildPhase 227 | runOnlyForDeploymentPostprocessing 228 | 0 229 | 230 | D228BD8B1992D1E6004BB7D8 231 | 232 | buildConfigurationList 233 | D228BDBE1992D1E7004BB7D8 234 | buildPhases 235 | 236 | 430A58411EDA484E9BB01E03 237 | D228BD881992D1E6004BB7D8 238 | D228BD891992D1E6004BB7D8 239 | D228BD8A1992D1E6004BB7D8 240 | B5B0D2DB77034EEEA87FE84D 241 | 242 | buildRules 243 | 244 | dependencies 245 | 246 | isa 247 | PBXNativeTarget 248 | name 249 | FVCustomAlertView-Example 250 | productName 251 | FVCustomAlertView-Example 252 | productReference 253 | D228BD8C1992D1E6004BB7D8 254 | productType 255 | com.apple.product-type.application 256 | 257 | D228BD8C1992D1E6004BB7D8 258 | 259 | explicitFileType 260 | wrapper.application 261 | includeInIndex 262 | 0 263 | isa 264 | PBXFileReference 265 | path 266 | FVCustomAlertView-Example.app 267 | sourceTree 268 | BUILT_PRODUCTS_DIR 269 | 270 | D228BD8D1992D1E6004BB7D8 271 | 272 | children 273 | 274 | D228BD8C1992D1E6004BB7D8 275 | 276 | isa 277 | PBXGroup 278 | name 279 | Products 280 | sourceTree 281 | <group> 282 | 283 | D228BD8E1992D1E6004BB7D8 284 | 285 | children 286 | 287 | D228BD8F1992D1E6004BB7D8 288 | D228BD911992D1E6004BB7D8 289 | D228BD931992D1E6004BB7D8 290 | D228BDAE1992D1E6004BB7D8 291 | 258401540CF94FF8B6D76800 292 | 293 | isa 294 | PBXGroup 295 | name 296 | Frameworks 297 | sourceTree 298 | <group> 299 | 300 | D228BD8F1992D1E6004BB7D8 301 | 302 | isa 303 | PBXFileReference 304 | lastKnownFileType 305 | wrapper.framework 306 | name 307 | Foundation.framework 308 | path 309 | System/Library/Frameworks/Foundation.framework 310 | sourceTree 311 | SDKROOT 312 | 313 | D228BD901992D1E6004BB7D8 314 | 315 | fileRef 316 | D228BD8F1992D1E6004BB7D8 317 | isa 318 | PBXBuildFile 319 | 320 | D228BD911992D1E6004BB7D8 321 | 322 | isa 323 | PBXFileReference 324 | lastKnownFileType 325 | wrapper.framework 326 | name 327 | CoreGraphics.framework 328 | path 329 | System/Library/Frameworks/CoreGraphics.framework 330 | sourceTree 331 | SDKROOT 332 | 333 | D228BD931992D1E6004BB7D8 334 | 335 | isa 336 | PBXFileReference 337 | lastKnownFileType 338 | wrapper.framework 339 | name 340 | UIKit.framework 341 | path 342 | System/Library/Frameworks/UIKit.framework 343 | sourceTree 344 | SDKROOT 345 | 346 | D228BD941992D1E6004BB7D8 347 | 348 | fileRef 349 | D228BD931992D1E6004BB7D8 350 | isa 351 | PBXBuildFile 352 | 353 | D228BD951992D1E6004BB7D8 354 | 355 | children 356 | 357 | D228BD9E1992D1E6004BB7D8 358 | D228BD9F1992D1E6004BB7D8 359 | D228BDA11992D1E6004BB7D8 360 | D228BDA41992D1E6004BB7D8 361 | D228BDA51992D1E6004BB7D8 362 | D228BDC41992D2E4004BB7D8 363 | D228BD961992D1E6004BB7D8 364 | 365 | isa 366 | PBXGroup 367 | path 368 | FVCustomAlertView-Example 369 | sourceTree 370 | <group> 371 | 372 | D228BD961992D1E6004BB7D8 373 | 374 | children 375 | 376 | D228BD971992D1E6004BB7D8 377 | D228BD9B1992D1E6004BB7D8 378 | D228BD9D1992D1E6004BB7D8 379 | 380 | isa 381 | PBXGroup 382 | name 383 | Supporting Files 384 | sourceTree 385 | <group> 386 | 387 | D228BD971992D1E6004BB7D8 388 | 389 | isa 390 | PBXFileReference 391 | lastKnownFileType 392 | text.plist.xml 393 | path 394 | FVCustomAlertView-Example-Info.plist 395 | sourceTree 396 | <group> 397 | 398 | D228BD9B1992D1E6004BB7D8 399 | 400 | isa 401 | PBXFileReference 402 | lastKnownFileType 403 | sourcecode.c.objc 404 | path 405 | main.m 406 | sourceTree 407 | <group> 408 | 409 | D228BD9C1992D1E6004BB7D8 410 | 411 | fileRef 412 | D228BD9B1992D1E6004BB7D8 413 | isa 414 | PBXBuildFile 415 | 416 | D228BD9D1992D1E6004BB7D8 417 | 418 | isa 419 | PBXFileReference 420 | lastKnownFileType 421 | sourcecode.c.h 422 | path 423 | FVCustomAlertView-Example-Prefix.pch 424 | sourceTree 425 | <group> 426 | 427 | D228BD9E1992D1E6004BB7D8 428 | 429 | isa 430 | PBXFileReference 431 | lastKnownFileType 432 | sourcecode.c.h 433 | path 434 | FVAppDelegate.h 435 | sourceTree 436 | <group> 437 | 438 | D228BD9F1992D1E6004BB7D8 439 | 440 | isa 441 | PBXFileReference 442 | lastKnownFileType 443 | sourcecode.c.objc 444 | path 445 | FVAppDelegate.m 446 | sourceTree 447 | <group> 448 | 449 | D228BDA01992D1E6004BB7D8 450 | 451 | fileRef 452 | D228BD9F1992D1E6004BB7D8 453 | isa 454 | PBXBuildFile 455 | 456 | D228BDA11992D1E6004BB7D8 457 | 458 | children 459 | 460 | D228BDA21992D1E6004BB7D8 461 | 462 | isa 463 | PBXVariantGroup 464 | name 465 | Main.storyboard 466 | sourceTree 467 | <group> 468 | 469 | D228BDA21992D1E6004BB7D8 470 | 471 | isa 472 | PBXFileReference 473 | lastKnownFileType 474 | file.storyboard 475 | name 476 | Base 477 | path 478 | Base.lproj/Main.storyboard 479 | sourceTree 480 | <group> 481 | 482 | D228BDA31992D1E6004BB7D8 483 | 484 | fileRef 485 | D228BDA11992D1E6004BB7D8 486 | isa 487 | PBXBuildFile 488 | 489 | D228BDA41992D1E6004BB7D8 490 | 491 | isa 492 | PBXFileReference 493 | lastKnownFileType 494 | sourcecode.c.h 495 | path 496 | FVViewController.h 497 | sourceTree 498 | <group> 499 | 500 | D228BDA51992D1E6004BB7D8 501 | 502 | isa 503 | PBXFileReference 504 | lastKnownFileType 505 | sourcecode.c.objc 506 | path 507 | FVViewController.m 508 | sourceTree 509 | <group> 510 | 511 | D228BDA61992D1E6004BB7D8 512 | 513 | fileRef 514 | D228BDA51992D1E6004BB7D8 515 | isa 516 | PBXBuildFile 517 | 518 | D228BDAE1992D1E6004BB7D8 519 | 520 | isa 521 | PBXFileReference 522 | lastKnownFileType 523 | wrapper.framework 524 | name 525 | XCTest.framework 526 | path 527 | Library/Frameworks/XCTest.framework 528 | sourceTree 529 | DEVELOPER_DIR 530 | 531 | D228BDBC1992D1E7004BB7D8 532 | 533 | buildSettings 534 | 535 | ALWAYS_SEARCH_USER_PATHS 536 | NO 537 | CLANG_CXX_LANGUAGE_STANDARD 538 | gnu++0x 539 | CLANG_CXX_LIBRARY 540 | libc++ 541 | CLANG_ENABLE_MODULES 542 | YES 543 | CLANG_ENABLE_OBJC_ARC 544 | YES 545 | CLANG_WARN_BOOL_CONVERSION 546 | YES 547 | CLANG_WARN_CONSTANT_CONVERSION 548 | YES 549 | CLANG_WARN_DIRECT_OBJC_ISA_USAGE 550 | YES_ERROR 551 | CLANG_WARN_EMPTY_BODY 552 | YES 553 | CLANG_WARN_ENUM_CONVERSION 554 | YES 555 | CLANG_WARN_INT_CONVERSION 556 | YES 557 | CLANG_WARN_OBJC_ROOT_CLASS 558 | YES_ERROR 559 | CLANG_WARN__DUPLICATE_METHOD_MATCH 560 | YES 561 | CODE_SIGN_IDENTITY[sdk=iphoneos*] 562 | iPhone Developer 563 | COPY_PHASE_STRIP 564 | NO 565 | GCC_C_LANGUAGE_STANDARD 566 | gnu99 567 | GCC_DYNAMIC_NO_PIC 568 | NO 569 | GCC_OPTIMIZATION_LEVEL 570 | 0 571 | GCC_PREPROCESSOR_DEFINITIONS 572 | 573 | DEBUG=1 574 | $(inherited) 575 | 576 | GCC_SYMBOLS_PRIVATE_EXTERN 577 | NO 578 | GCC_WARN_64_TO_32_BIT_CONVERSION 579 | YES 580 | GCC_WARN_ABOUT_RETURN_TYPE 581 | YES_ERROR 582 | GCC_WARN_UNDECLARED_SELECTOR 583 | YES 584 | GCC_WARN_UNINITIALIZED_AUTOS 585 | YES_AGGRESSIVE 586 | GCC_WARN_UNUSED_FUNCTION 587 | YES 588 | GCC_WARN_UNUSED_VARIABLE 589 | YES 590 | IPHONEOS_DEPLOYMENT_TARGET 591 | 8.0 592 | ONLY_ACTIVE_ARCH 593 | YES 594 | SDKROOT 595 | iphoneos 596 | 597 | isa 598 | XCBuildConfiguration 599 | name 600 | Debug 601 | 602 | D228BDBD1992D1E7004BB7D8 603 | 604 | buildSettings 605 | 606 | ALWAYS_SEARCH_USER_PATHS 607 | NO 608 | CLANG_CXX_LANGUAGE_STANDARD 609 | gnu++0x 610 | CLANG_CXX_LIBRARY 611 | libc++ 612 | CLANG_ENABLE_MODULES 613 | YES 614 | CLANG_ENABLE_OBJC_ARC 615 | YES 616 | CLANG_WARN_BOOL_CONVERSION 617 | YES 618 | CLANG_WARN_CONSTANT_CONVERSION 619 | YES 620 | CLANG_WARN_DIRECT_OBJC_ISA_USAGE 621 | YES_ERROR 622 | CLANG_WARN_EMPTY_BODY 623 | YES 624 | CLANG_WARN_ENUM_CONVERSION 625 | YES 626 | CLANG_WARN_INT_CONVERSION 627 | YES 628 | CLANG_WARN_OBJC_ROOT_CLASS 629 | YES_ERROR 630 | CLANG_WARN__DUPLICATE_METHOD_MATCH 631 | YES 632 | CODE_SIGN_IDENTITY[sdk=iphoneos*] 633 | iPhone Developer 634 | COPY_PHASE_STRIP 635 | YES 636 | ENABLE_NS_ASSERTIONS 637 | NO 638 | GCC_C_LANGUAGE_STANDARD 639 | gnu99 640 | GCC_WARN_64_TO_32_BIT_CONVERSION 641 | YES 642 | GCC_WARN_ABOUT_RETURN_TYPE 643 | YES_ERROR 644 | GCC_WARN_UNDECLARED_SELECTOR 645 | YES 646 | GCC_WARN_UNINITIALIZED_AUTOS 647 | YES_AGGRESSIVE 648 | GCC_WARN_UNUSED_FUNCTION 649 | YES 650 | GCC_WARN_UNUSED_VARIABLE 651 | YES 652 | IPHONEOS_DEPLOYMENT_TARGET 653 | 8.0 654 | SDKROOT 655 | iphoneos 656 | VALIDATE_PRODUCT 657 | YES 658 | 659 | isa 660 | XCBuildConfiguration 661 | name 662 | Release 663 | 664 | D228BDBE1992D1E7004BB7D8 665 | 666 | buildConfigurations 667 | 668 | D228BDBF1992D1E7004BB7D8 669 | D228BDC01992D1E7004BB7D8 670 | 671 | defaultConfigurationIsVisible 672 | 0 673 | defaultConfigurationName 674 | Release 675 | isa 676 | XCConfigurationList 677 | 678 | D228BDBF1992D1E7004BB7D8 679 | 680 | baseConfigurationReference 681 | 394E252CAFC24A7268699FA7 682 | buildSettings 683 | 684 | ASSETCATALOG_COMPILER_APPICON_NAME 685 | AppIcon 686 | ASSETCATALOG_COMPILER_LAUNCHIMAGE_NAME 687 | LaunchImage 688 | GCC_PRECOMPILE_PREFIX_HEADER 689 | YES 690 | GCC_PREFIX_HEADER 691 | FVCustomAlertView-Example/FVCustomAlertView-Example-Prefix.pch 692 | INFOPLIST_FILE 693 | FVCustomAlertView-Example/FVCustomAlertView-Example-Info.plist 694 | IPHONEOS_DEPLOYMENT_TARGET 695 | 8.0 696 | PRODUCT_NAME 697 | $(TARGET_NAME) 698 | WRAPPER_EXTENSION 699 | app 700 | 701 | isa 702 | XCBuildConfiguration 703 | name 704 | Debug 705 | 706 | D228BDC01992D1E7004BB7D8 707 | 708 | baseConfigurationReference 709 | 42C30B026D830169D839D5F7 710 | buildSettings 711 | 712 | ASSETCATALOG_COMPILER_APPICON_NAME 713 | AppIcon 714 | ASSETCATALOG_COMPILER_LAUNCHIMAGE_NAME 715 | LaunchImage 716 | GCC_PRECOMPILE_PREFIX_HEADER 717 | YES 718 | GCC_PREFIX_HEADER 719 | FVCustomAlertView-Example/FVCustomAlertView-Example-Prefix.pch 720 | INFOPLIST_FILE 721 | FVCustomAlertView-Example/FVCustomAlertView-Example-Info.plist 722 | IPHONEOS_DEPLOYMENT_TARGET 723 | 8.0 724 | PRODUCT_NAME 725 | $(TARGET_NAME) 726 | WRAPPER_EXTENSION 727 | app 728 | 729 | isa 730 | XCBuildConfiguration 731 | name 732 | Release 733 | 734 | D228BDC41992D2E4004BB7D8 735 | 736 | isa 737 | PBXFileReference 738 | lastKnownFileType 739 | folder.assetcatalog 740 | path 741 | DemoImages.xcassets 742 | sourceTree 743 | <group> 744 | 745 | D228BDC51992D2E4004BB7D8 746 | 747 | fileRef 748 | D228BDC41992D2E4004BB7D8 749 | isa 750 | PBXBuildFile 751 | 752 | F310DB1AEE3BD245F31828B3 753 | 754 | children 755 | 756 | 394E252CAFC24A7268699FA7 757 | 42C30B026D830169D839D5F7 758 | 759 | isa 760 | PBXGroup 761 | name 762 | Pods 763 | sourceTree 764 | <group> 765 | 766 | 767 | rootObject 768 | D228BD841992D1E6004BB7D8 769 | 770 | 771 | -------------------------------------------------------------------------------- /FVCustomAlertView/FVCustomAlertView.xcodeproj/project.pbxproj: -------------------------------------------------------------------------------- 1 | // !$*UTF8*$! 2 | { 3 | archiveVersion = 1; 4 | classes = { 5 | }; 6 | objectVersion = 46; 7 | objects = { 8 | 9 | /* Begin PBXBuildFile section */ 10 | D228BC811992CA4A004BB7D8 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D228BC801992CA4A004BB7D8 /* Foundation.framework */; }; 11 | D228BC861992CA4A004BB7D8 /* FVCustomAlertView.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = D228BC851992CA4A004BB7D8 /* FVCustomAlertView.h */; }; 12 | D228BC881992CA4A004BB7D8 /* FVCustomAlertView.m in Sources */ = {isa = PBXBuildFile; fileRef = D228BC871992CA4A004BB7D8 /* FVCustomAlertView.m */; }; 13 | D228BCA71992CBE9004BB7D8 /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D228BC911992CA4A004BB7D8 /* UIKit.framework */; }; 14 | D228BD1C1992CED5004BB7D8 /* CoreFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D228BCAE1992CDC4004BB7D8 /* CoreFoundation.framework */; }; 15 | D228BD551992CEF9004BB7D8 /* 1.png in Resources */ = {isa = PBXBuildFile; fileRef = D228BD271992CEF9004BB7D8 /* 1.png */; }; 16 | D228BD561992CEF9004BB7D8 /* 1@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = D228BD281992CEF9004BB7D8 /* 1@2x.png */; }; 17 | D228BD571992CEF9004BB7D8 /* 2.png in Resources */ = {isa = PBXBuildFile; fileRef = D228BD291992CEF9004BB7D8 /* 2.png */; }; 18 | D228BD581992CEF9004BB7D8 /* 2@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = D228BD2A1992CEF9004BB7D8 /* 2@2x.png */; }; 19 | D228BD591992CEF9004BB7D8 /* 3.png in Resources */ = {isa = PBXBuildFile; fileRef = D228BD2B1992CEF9004BB7D8 /* 3.png */; }; 20 | D228BD5A1992CEF9004BB7D8 /* 3@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = D228BD2C1992CEF9004BB7D8 /* 3@2x.png */; }; 21 | D228BD5B1992CEF9004BB7D8 /* 4.png in Resources */ = {isa = PBXBuildFile; fileRef = D228BD2D1992CEF9004BB7D8 /* 4.png */; }; 22 | D228BD5C1992CEF9004BB7D8 /* 4@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = D228BD2E1992CEF9004BB7D8 /* 4@2x.png */; }; 23 | D228BD5D1992CEF9004BB7D8 /* 5.png in Resources */ = {isa = PBXBuildFile; fileRef = D228BD2F1992CEF9004BB7D8 /* 5.png */; }; 24 | D228BD5E1992CEF9004BB7D8 /* 5@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = D228BD301992CEF9004BB7D8 /* 5@2x.png */; }; 25 | D228BD5F1992CEF9004BB7D8 /* 6.png in Resources */ = {isa = PBXBuildFile; fileRef = D228BD311992CEF9004BB7D8 /* 6.png */; }; 26 | D228BD601992CEF9004BB7D8 /* 6@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = D228BD321992CEF9004BB7D8 /* 6@2x.png */; }; 27 | D228BD611992CEF9004BB7D8 /* 7.png in Resources */ = {isa = PBXBuildFile; fileRef = D228BD331992CEF9004BB7D8 /* 7.png */; }; 28 | D228BD621992CEF9004BB7D8 /* 7@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = D228BD341992CEF9004BB7D8 /* 7@2x.png */; }; 29 | D228BD631992CEF9004BB7D8 /* 8.png in Resources */ = {isa = PBXBuildFile; fileRef = D228BD351992CEF9004BB7D8 /* 8.png */; }; 30 | D228BD641992CEF9004BB7D8 /* 8@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = D228BD361992CEF9004BB7D8 /* 8@2x.png */; }; 31 | D228BD651992CEF9004BB7D8 /* 9.png in Resources */ = {isa = PBXBuildFile; fileRef = D228BD371992CEF9004BB7D8 /* 9.png */; }; 32 | D228BD661992CEF9004BB7D8 /* 9@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = D228BD381992CEF9004BB7D8 /* 9@2x.png */; }; 33 | D228BD671992CEF9004BB7D8 /* 10.png in Resources */ = {isa = PBXBuildFile; fileRef = D228BD391992CEF9004BB7D8 /* 10.png */; }; 34 | D228BD681992CEF9004BB7D8 /* 10@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = D228BD3A1992CEF9004BB7D8 /* 10@2x.png */; }; 35 | D228BD691992CEF9004BB7D8 /* 11.png in Resources */ = {isa = PBXBuildFile; fileRef = D228BD3B1992CEF9004BB7D8 /* 11.png */; }; 36 | D228BD6A1992CEF9004BB7D8 /* 11@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = D228BD3C1992CEF9004BB7D8 /* 11@2x.png */; }; 37 | D228BD6B1992CEF9004BB7D8 /* 12.png in Resources */ = {isa = PBXBuildFile; fileRef = D228BD3D1992CEF9004BB7D8 /* 12.png */; }; 38 | D228BD6C1992CEF9004BB7D8 /* 12@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = D228BD3E1992CEF9004BB7D8 /* 12@2x.png */; }; 39 | D228BD6D1992CEF9004BB7D8 /* 13.png in Resources */ = {isa = PBXBuildFile; fileRef = D228BD3F1992CEF9004BB7D8 /* 13.png */; }; 40 | D228BD6E1992CEF9004BB7D8 /* 13@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = D228BD401992CEF9004BB7D8 /* 13@2x.png */; }; 41 | D228BD6F1992CEF9004BB7D8 /* 14.png in Resources */ = {isa = PBXBuildFile; fileRef = D228BD411992CEF9004BB7D8 /* 14.png */; }; 42 | D228BD701992CEF9004BB7D8 /* 14@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = D228BD421992CEF9004BB7D8 /* 14@2x.png */; }; 43 | D228BD711992CEF9004BB7D8 /* 15.png in Resources */ = {isa = PBXBuildFile; fileRef = D228BD431992CEF9004BB7D8 /* 15.png */; }; 44 | D228BD721992CEF9004BB7D8 /* 15@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = D228BD441992CEF9004BB7D8 /* 15@2x.png */; }; 45 | D228BD731992CEF9004BB7D8 /* 16.png in Resources */ = {isa = PBXBuildFile; fileRef = D228BD451992CEF9004BB7D8 /* 16.png */; }; 46 | D228BD741992CEF9004BB7D8 /* 16@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = D228BD461992CEF9004BB7D8 /* 16@2x.png */; }; 47 | D228BD751992CEF9004BB7D8 /* 17.png in Resources */ = {isa = PBXBuildFile; fileRef = D228BD471992CEF9004BB7D8 /* 17.png */; }; 48 | D228BD761992CEF9004BB7D8 /* 17@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = D228BD481992CEF9004BB7D8 /* 17@2x.png */; }; 49 | D228BD771992CEF9004BB7D8 /* 18.png in Resources */ = {isa = PBXBuildFile; fileRef = D228BD491992CEF9004BB7D8 /* 18.png */; }; 50 | D228BD781992CEF9004BB7D8 /* 18@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = D228BD4A1992CEF9004BB7D8 /* 18@2x.png */; }; 51 | D228BD791992CEF9004BB7D8 /* 19.png in Resources */ = {isa = PBXBuildFile; fileRef = D228BD4B1992CEF9004BB7D8 /* 19.png */; }; 52 | D228BD7A1992CEF9004BB7D8 /* 19@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = D228BD4C1992CEF9004BB7D8 /* 19@2x.png */; }; 53 | D228BD7B1992CEF9004BB7D8 /* 20.png in Resources */ = {isa = PBXBuildFile; fileRef = D228BD4D1992CEF9004BB7D8 /* 20.png */; }; 54 | D228BD7C1992CEF9004BB7D8 /* 20@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = D228BD4E1992CEF9004BB7D8 /* 20@2x.png */; }; 55 | D228BD7D1992CEF9004BB7D8 /* checkmark.png in Resources */ = {isa = PBXBuildFile; fileRef = D228BD4F1992CEF9004BB7D8 /* checkmark.png */; }; 56 | D228BD7E1992CEF9004BB7D8 /* checkmark@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = D228BD501992CEF9004BB7D8 /* checkmark@2x.png */; }; 57 | D228BD7F1992CEF9004BB7D8 /* cross.png in Resources */ = {isa = PBXBuildFile; fileRef = D228BD511992CEF9004BB7D8 /* cross.png */; }; 58 | D228BD801992CEF9004BB7D8 /* cross@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = D228BD521992CEF9004BB7D8 /* cross@2x.png */; }; 59 | D228BD811992CEF9004BB7D8 /* warning.png in Resources */ = {isa = PBXBuildFile; fileRef = D228BD531992CEF9004BB7D8 /* warning.png */; }; 60 | D228BD821992CEF9004BB7D8 /* warning@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = D228BD541992CEF9004BB7D8 /* warning@2x.png */; }; 61 | /* End PBXBuildFile section */ 62 | 63 | /* Begin PBXCopyFilesBuildPhase section */ 64 | D228BC7B1992CA4A004BB7D8 /* CopyFiles */ = { 65 | isa = PBXCopyFilesBuildPhase; 66 | buildActionMask = 2147483647; 67 | dstPath = include; 68 | dstSubfolderSpec = 16; 69 | files = ( 70 | D228BC861992CA4A004BB7D8 /* FVCustomAlertView.h in CopyFiles */, 71 | ); 72 | runOnlyForDeploymentPostprocessing = 0; 73 | }; 74 | /* End PBXCopyFilesBuildPhase section */ 75 | 76 | /* Begin PBXFileReference section */ 77 | D228BC7D1992CA4A004BB7D8 /* libFVCustomAlertView.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libFVCustomAlertView.a; sourceTree = BUILT_PRODUCTS_DIR; }; 78 | D228BC801992CA4A004BB7D8 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = System/Library/Frameworks/Foundation.framework; sourceTree = SDKROOT; }; 79 | D228BC841992CA4A004BB7D8 /* FVCustomAlertView-Prefix.pch */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "FVCustomAlertView-Prefix.pch"; sourceTree = ""; }; 80 | D228BC851992CA4A004BB7D8 /* FVCustomAlertView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = FVCustomAlertView.h; sourceTree = ""; }; 81 | D228BC871992CA4A004BB7D8 /* FVCustomAlertView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = FVCustomAlertView.m; sourceTree = ""; }; 82 | D228BC911992CA4A004BB7D8 /* UIKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UIKit.framework; path = Library/Frameworks/UIKit.framework; sourceTree = DEVELOPER_DIR; }; 83 | D228BCAE1992CDC4004BB7D8 /* CoreFoundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreFoundation.framework; path = System/Library/Frameworks/CoreFoundation.framework; sourceTree = SDKROOT; }; 84 | D228BD1B1992CED5004BB7D8 /* FVCustomAlertViewResources.bundle */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = FVCustomAlertViewResources.bundle; sourceTree = BUILT_PRODUCTS_DIR; }; 85 | D228BD271992CEF9004BB7D8 /* 1.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = 1.png; sourceTree = ""; }; 86 | D228BD281992CEF9004BB7D8 /* 1@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "1@2x.png"; sourceTree = ""; }; 87 | D228BD291992CEF9004BB7D8 /* 2.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = 2.png; sourceTree = ""; }; 88 | D228BD2A1992CEF9004BB7D8 /* 2@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "2@2x.png"; sourceTree = ""; }; 89 | D228BD2B1992CEF9004BB7D8 /* 3.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = 3.png; sourceTree = ""; }; 90 | D228BD2C1992CEF9004BB7D8 /* 3@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "3@2x.png"; sourceTree = ""; }; 91 | D228BD2D1992CEF9004BB7D8 /* 4.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = 4.png; sourceTree = ""; }; 92 | D228BD2E1992CEF9004BB7D8 /* 4@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "4@2x.png"; sourceTree = ""; }; 93 | D228BD2F1992CEF9004BB7D8 /* 5.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = 5.png; sourceTree = ""; }; 94 | D228BD301992CEF9004BB7D8 /* 5@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "5@2x.png"; sourceTree = ""; }; 95 | D228BD311992CEF9004BB7D8 /* 6.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = 6.png; sourceTree = ""; }; 96 | D228BD321992CEF9004BB7D8 /* 6@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "6@2x.png"; sourceTree = ""; }; 97 | D228BD331992CEF9004BB7D8 /* 7.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = 7.png; sourceTree = ""; }; 98 | D228BD341992CEF9004BB7D8 /* 7@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "7@2x.png"; sourceTree = ""; }; 99 | D228BD351992CEF9004BB7D8 /* 8.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = 8.png; sourceTree = ""; }; 100 | D228BD361992CEF9004BB7D8 /* 8@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "8@2x.png"; sourceTree = ""; }; 101 | D228BD371992CEF9004BB7D8 /* 9.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = 9.png; sourceTree = ""; }; 102 | D228BD381992CEF9004BB7D8 /* 9@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "9@2x.png"; sourceTree = ""; }; 103 | D228BD391992CEF9004BB7D8 /* 10.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = 10.png; sourceTree = ""; }; 104 | D228BD3A1992CEF9004BB7D8 /* 10@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "10@2x.png"; sourceTree = ""; }; 105 | D228BD3B1992CEF9004BB7D8 /* 11.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = 11.png; sourceTree = ""; }; 106 | D228BD3C1992CEF9004BB7D8 /* 11@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "11@2x.png"; sourceTree = ""; }; 107 | D228BD3D1992CEF9004BB7D8 /* 12.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = 12.png; sourceTree = ""; }; 108 | D228BD3E1992CEF9004BB7D8 /* 12@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "12@2x.png"; sourceTree = ""; }; 109 | D228BD3F1992CEF9004BB7D8 /* 13.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = 13.png; sourceTree = ""; }; 110 | D228BD401992CEF9004BB7D8 /* 13@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "13@2x.png"; sourceTree = ""; }; 111 | D228BD411992CEF9004BB7D8 /* 14.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = 14.png; sourceTree = ""; }; 112 | D228BD421992CEF9004BB7D8 /* 14@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "14@2x.png"; sourceTree = ""; }; 113 | D228BD431992CEF9004BB7D8 /* 15.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = 15.png; sourceTree = ""; }; 114 | D228BD441992CEF9004BB7D8 /* 15@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "15@2x.png"; sourceTree = ""; }; 115 | D228BD451992CEF9004BB7D8 /* 16.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = 16.png; sourceTree = ""; }; 116 | D228BD461992CEF9004BB7D8 /* 16@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "16@2x.png"; sourceTree = ""; }; 117 | D228BD471992CEF9004BB7D8 /* 17.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = 17.png; sourceTree = ""; }; 118 | D228BD481992CEF9004BB7D8 /* 17@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "17@2x.png"; sourceTree = ""; }; 119 | D228BD491992CEF9004BB7D8 /* 18.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = 18.png; sourceTree = ""; }; 120 | D228BD4A1992CEF9004BB7D8 /* 18@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "18@2x.png"; sourceTree = ""; }; 121 | D228BD4B1992CEF9004BB7D8 /* 19.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = 19.png; sourceTree = ""; }; 122 | D228BD4C1992CEF9004BB7D8 /* 19@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "19@2x.png"; sourceTree = ""; }; 123 | D228BD4D1992CEF9004BB7D8 /* 20.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = 20.png; sourceTree = ""; }; 124 | D228BD4E1992CEF9004BB7D8 /* 20@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "20@2x.png"; sourceTree = ""; }; 125 | D228BD4F1992CEF9004BB7D8 /* checkmark.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = checkmark.png; sourceTree = ""; }; 126 | D228BD501992CEF9004BB7D8 /* checkmark@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "checkmark@2x.png"; sourceTree = ""; }; 127 | D228BD511992CEF9004BB7D8 /* cross.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = cross.png; sourceTree = ""; }; 128 | D228BD521992CEF9004BB7D8 /* cross@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "cross@2x.png"; sourceTree = ""; }; 129 | D228BD531992CEF9004BB7D8 /* warning.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = warning.png; sourceTree = ""; }; 130 | D228BD541992CEF9004BB7D8 /* warning@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "warning@2x.png"; sourceTree = ""; }; 131 | /* End PBXFileReference section */ 132 | 133 | /* Begin PBXFrameworksBuildPhase section */ 134 | D228BC7A1992CA4A004BB7D8 /* Frameworks */ = { 135 | isa = PBXFrameworksBuildPhase; 136 | buildActionMask = 2147483647; 137 | files = ( 138 | D228BC811992CA4A004BB7D8 /* Foundation.framework in Frameworks */, 139 | D228BCA71992CBE9004BB7D8 /* UIKit.framework in Frameworks */, 140 | ); 141 | runOnlyForDeploymentPostprocessing = 0; 142 | }; 143 | D228BD181992CED5004BB7D8 /* Frameworks */ = { 144 | isa = PBXFrameworksBuildPhase; 145 | buildActionMask = 2147483647; 146 | files = ( 147 | D228BD1C1992CED5004BB7D8 /* CoreFoundation.framework in Frameworks */, 148 | ); 149 | runOnlyForDeploymentPostprocessing = 0; 150 | }; 151 | /* End PBXFrameworksBuildPhase section */ 152 | 153 | /* Begin PBXGroup section */ 154 | D228BC741992CA4A004BB7D8 = { 155 | isa = PBXGroup; 156 | children = ( 157 | D228BC821992CA4A004BB7D8 /* FVCustomAlertView */, 158 | D228BD1D1992CED5004BB7D8 /* FVCustomAlertViewResources */, 159 | D228BC7F1992CA4A004BB7D8 /* Frameworks */, 160 | D228BC7E1992CA4A004BB7D8 /* Products */, 161 | ); 162 | sourceTree = ""; 163 | }; 164 | D228BC7E1992CA4A004BB7D8 /* Products */ = { 165 | isa = PBXGroup; 166 | children = ( 167 | D228BC7D1992CA4A004BB7D8 /* libFVCustomAlertView.a */, 168 | D228BD1B1992CED5004BB7D8 /* FVCustomAlertViewResources.bundle */, 169 | ); 170 | name = Products; 171 | sourceTree = ""; 172 | }; 173 | D228BC7F1992CA4A004BB7D8 /* Frameworks */ = { 174 | isa = PBXGroup; 175 | children = ( 176 | D228BC801992CA4A004BB7D8 /* Foundation.framework */, 177 | D228BC911992CA4A004BB7D8 /* UIKit.framework */, 178 | D228BCAE1992CDC4004BB7D8 /* CoreFoundation.framework */, 179 | ); 180 | name = Frameworks; 181 | sourceTree = ""; 182 | }; 183 | D228BC821992CA4A004BB7D8 /* FVCustomAlertView */ = { 184 | isa = PBXGroup; 185 | children = ( 186 | D228BC851992CA4A004BB7D8 /* FVCustomAlertView.h */, 187 | D228BC871992CA4A004BB7D8 /* FVCustomAlertView.m */, 188 | D228BC831992CA4A004BB7D8 /* Supporting Files */, 189 | ); 190 | path = FVCustomAlertView; 191 | sourceTree = ""; 192 | }; 193 | D228BC831992CA4A004BB7D8 /* Supporting Files */ = { 194 | isa = PBXGroup; 195 | children = ( 196 | D228BC841992CA4A004BB7D8 /* FVCustomAlertView-Prefix.pch */, 197 | ); 198 | name = "Supporting Files"; 199 | sourceTree = ""; 200 | }; 201 | D228BD1D1992CED5004BB7D8 /* FVCustomAlertViewResources */ = { 202 | isa = PBXGroup; 203 | children = ( 204 | D228BD271992CEF9004BB7D8 /* 1.png */, 205 | D228BD281992CEF9004BB7D8 /* 1@2x.png */, 206 | D228BD291992CEF9004BB7D8 /* 2.png */, 207 | D228BD2A1992CEF9004BB7D8 /* 2@2x.png */, 208 | D228BD2B1992CEF9004BB7D8 /* 3.png */, 209 | D228BD2C1992CEF9004BB7D8 /* 3@2x.png */, 210 | D228BD2D1992CEF9004BB7D8 /* 4.png */, 211 | D228BD2E1992CEF9004BB7D8 /* 4@2x.png */, 212 | D228BD2F1992CEF9004BB7D8 /* 5.png */, 213 | D228BD301992CEF9004BB7D8 /* 5@2x.png */, 214 | D228BD311992CEF9004BB7D8 /* 6.png */, 215 | D228BD321992CEF9004BB7D8 /* 6@2x.png */, 216 | D228BD331992CEF9004BB7D8 /* 7.png */, 217 | D228BD341992CEF9004BB7D8 /* 7@2x.png */, 218 | D228BD351992CEF9004BB7D8 /* 8.png */, 219 | D228BD361992CEF9004BB7D8 /* 8@2x.png */, 220 | D228BD371992CEF9004BB7D8 /* 9.png */, 221 | D228BD381992CEF9004BB7D8 /* 9@2x.png */, 222 | D228BD391992CEF9004BB7D8 /* 10.png */, 223 | D228BD3A1992CEF9004BB7D8 /* 10@2x.png */, 224 | D228BD3B1992CEF9004BB7D8 /* 11.png */, 225 | D228BD3C1992CEF9004BB7D8 /* 11@2x.png */, 226 | D228BD3D1992CEF9004BB7D8 /* 12.png */, 227 | D228BD3E1992CEF9004BB7D8 /* 12@2x.png */, 228 | D228BD3F1992CEF9004BB7D8 /* 13.png */, 229 | D228BD401992CEF9004BB7D8 /* 13@2x.png */, 230 | D228BD411992CEF9004BB7D8 /* 14.png */, 231 | D228BD421992CEF9004BB7D8 /* 14@2x.png */, 232 | D228BD431992CEF9004BB7D8 /* 15.png */, 233 | D228BD441992CEF9004BB7D8 /* 15@2x.png */, 234 | D228BD451992CEF9004BB7D8 /* 16.png */, 235 | D228BD461992CEF9004BB7D8 /* 16@2x.png */, 236 | D228BD471992CEF9004BB7D8 /* 17.png */, 237 | D228BD481992CEF9004BB7D8 /* 17@2x.png */, 238 | D228BD491992CEF9004BB7D8 /* 18.png */, 239 | D228BD4A1992CEF9004BB7D8 /* 18@2x.png */, 240 | D228BD4B1992CEF9004BB7D8 /* 19.png */, 241 | D228BD4C1992CEF9004BB7D8 /* 19@2x.png */, 242 | D228BD4D1992CEF9004BB7D8 /* 20.png */, 243 | D228BD4E1992CEF9004BB7D8 /* 20@2x.png */, 244 | D228BD4F1992CEF9004BB7D8 /* checkmark.png */, 245 | D228BD501992CEF9004BB7D8 /* checkmark@2x.png */, 246 | D228BD511992CEF9004BB7D8 /* cross.png */, 247 | D228BD521992CEF9004BB7D8 /* cross@2x.png */, 248 | D228BD531992CEF9004BB7D8 /* warning.png */, 249 | D228BD541992CEF9004BB7D8 /* warning@2x.png */, 250 | ); 251 | path = FVCustomAlertViewResources; 252 | sourceTree = ""; 253 | }; 254 | /* End PBXGroup section */ 255 | 256 | /* Begin PBXNativeTarget section */ 257 | D228BC7C1992CA4A004BB7D8 /* FVCustomAlertView */ = { 258 | isa = PBXNativeTarget; 259 | buildConfigurationList = D228BCA01992CA4A004BB7D8 /* Build configuration list for PBXNativeTarget "FVCustomAlertView" */; 260 | buildPhases = ( 261 | D228BC791992CA4A004BB7D8 /* Sources */, 262 | D228BC7A1992CA4A004BB7D8 /* Frameworks */, 263 | D228BC7B1992CA4A004BB7D8 /* CopyFiles */, 264 | ); 265 | buildRules = ( 266 | ); 267 | dependencies = ( 268 | ); 269 | name = FVCustomAlertView; 270 | productName = FVCustomAlertView; 271 | productReference = D228BC7D1992CA4A004BB7D8 /* libFVCustomAlertView.a */; 272 | productType = "com.apple.product-type.library.static"; 273 | }; 274 | D228BD1A1992CED5004BB7D8 /* FVCustomAlertViewResources */ = { 275 | isa = PBXNativeTarget; 276 | buildConfigurationList = D228BD241992CED5004BB7D8 /* Build configuration list for PBXNativeTarget "FVCustomAlertViewResources" */; 277 | buildPhases = ( 278 | D228BD171992CED5004BB7D8 /* Sources */, 279 | D228BD181992CED5004BB7D8 /* Frameworks */, 280 | D228BD191992CED5004BB7D8 /* Resources */, 281 | ); 282 | buildRules = ( 283 | ); 284 | dependencies = ( 285 | ); 286 | name = FVCustomAlertViewResources; 287 | productName = FVCustomAlertViewResources; 288 | productReference = D228BD1B1992CED5004BB7D8 /* FVCustomAlertViewResources.bundle */; 289 | productType = "com.apple.product-type.bundle"; 290 | }; 291 | /* End PBXNativeTarget section */ 292 | 293 | /* Begin PBXProject section */ 294 | D228BC751992CA4A004BB7D8 /* Project object */ = { 295 | isa = PBXProject; 296 | attributes = { 297 | LastUpgradeCheck = 0510; 298 | ORGANIZATIONNAME = "Francis Visoiu Mistrih"; 299 | }; 300 | buildConfigurationList = D228BC781992CA4A004BB7D8 /* Build configuration list for PBXProject "FVCustomAlertView" */; 301 | compatibilityVersion = "Xcode 3.2"; 302 | developmentRegion = English; 303 | hasScannedForEncodings = 0; 304 | knownRegions = ( 305 | en, 306 | ); 307 | mainGroup = D228BC741992CA4A004BB7D8; 308 | productRefGroup = D228BC7E1992CA4A004BB7D8 /* Products */; 309 | projectDirPath = ""; 310 | projectRoot = ""; 311 | targets = ( 312 | D228BC7C1992CA4A004BB7D8 /* FVCustomAlertView */, 313 | D228BD1A1992CED5004BB7D8 /* FVCustomAlertViewResources */, 314 | ); 315 | }; 316 | /* End PBXProject section */ 317 | 318 | /* Begin PBXResourcesBuildPhase section */ 319 | D228BD191992CED5004BB7D8 /* Resources */ = { 320 | isa = PBXResourcesBuildPhase; 321 | buildActionMask = 2147483647; 322 | files = ( 323 | D228BD7B1992CEF9004BB7D8 /* 20.png in Resources */, 324 | D228BD661992CEF9004BB7D8 /* 9@2x.png in Resources */, 325 | D228BD791992CEF9004BB7D8 /* 19.png in Resources */, 326 | D228BD6F1992CEF9004BB7D8 /* 14.png in Resources */, 327 | D228BD6C1992CEF9004BB7D8 /* 12@2x.png in Resources */, 328 | D228BD631992CEF9004BB7D8 /* 8.png in Resources */, 329 | D228BD751992CEF9004BB7D8 /* 17.png in Resources */, 330 | D228BD771992CEF9004BB7D8 /* 18.png in Resources */, 331 | D228BD7C1992CEF9004BB7D8 /* 20@2x.png in Resources */, 332 | D228BD5F1992CEF9004BB7D8 /* 6.png in Resources */, 333 | D228BD611992CEF9004BB7D8 /* 7.png in Resources */, 334 | D228BD801992CEF9004BB7D8 /* cross@2x.png in Resources */, 335 | D228BD721992CEF9004BB7D8 /* 15@2x.png in Resources */, 336 | D228BD6A1992CEF9004BB7D8 /* 11@2x.png in Resources */, 337 | D228BD5A1992CEF9004BB7D8 /* 3@2x.png in Resources */, 338 | D228BD811992CEF9004BB7D8 /* warning.png in Resources */, 339 | D228BD5C1992CEF9004BB7D8 /* 4@2x.png in Resources */, 340 | D228BD6E1992CEF9004BB7D8 /* 13@2x.png in Resources */, 341 | D228BD7D1992CEF9004BB7D8 /* checkmark.png in Resources */, 342 | D228BD601992CEF9004BB7D8 /* 6@2x.png in Resources */, 343 | D228BD681992CEF9004BB7D8 /* 10@2x.png in Resources */, 344 | D228BD781992CEF9004BB7D8 /* 18@2x.png in Resources */, 345 | D228BD741992CEF9004BB7D8 /* 16@2x.png in Resources */, 346 | D228BD5E1992CEF9004BB7D8 /* 5@2x.png in Resources */, 347 | D228BD761992CEF9004BB7D8 /* 17@2x.png in Resources */, 348 | D228BD5B1992CEF9004BB7D8 /* 4.png in Resources */, 349 | D228BD591992CEF9004BB7D8 /* 3.png in Resources */, 350 | D228BD731992CEF9004BB7D8 /* 16.png in Resources */, 351 | D228BD701992CEF9004BB7D8 /* 14@2x.png in Resources */, 352 | D228BD7A1992CEF9004BB7D8 /* 19@2x.png in Resources */, 353 | D228BD711992CEF9004BB7D8 /* 15.png in Resources */, 354 | D228BD821992CEF9004BB7D8 /* warning@2x.png in Resources */, 355 | D228BD651992CEF9004BB7D8 /* 9.png in Resources */, 356 | D228BD571992CEF9004BB7D8 /* 2.png in Resources */, 357 | D228BD561992CEF9004BB7D8 /* 1@2x.png in Resources */, 358 | D228BD7F1992CEF9004BB7D8 /* cross.png in Resources */, 359 | D228BD621992CEF9004BB7D8 /* 7@2x.png in Resources */, 360 | D228BD5D1992CEF9004BB7D8 /* 5.png in Resources */, 361 | D228BD7E1992CEF9004BB7D8 /* checkmark@2x.png in Resources */, 362 | D228BD641992CEF9004BB7D8 /* 8@2x.png in Resources */, 363 | D228BD551992CEF9004BB7D8 /* 1.png in Resources */, 364 | D228BD6D1992CEF9004BB7D8 /* 13.png in Resources */, 365 | D228BD6B1992CEF9004BB7D8 /* 12.png in Resources */, 366 | D228BD671992CEF9004BB7D8 /* 10.png in Resources */, 367 | D228BD691992CEF9004BB7D8 /* 11.png in Resources */, 368 | D228BD581992CEF9004BB7D8 /* 2@2x.png in Resources */, 369 | ); 370 | runOnlyForDeploymentPostprocessing = 0; 371 | }; 372 | /* End PBXResourcesBuildPhase section */ 373 | 374 | /* Begin PBXSourcesBuildPhase section */ 375 | D228BC791992CA4A004BB7D8 /* Sources */ = { 376 | isa = PBXSourcesBuildPhase; 377 | buildActionMask = 2147483647; 378 | files = ( 379 | D228BC881992CA4A004BB7D8 /* FVCustomAlertView.m in Sources */, 380 | ); 381 | runOnlyForDeploymentPostprocessing = 0; 382 | }; 383 | D228BD171992CED5004BB7D8 /* Sources */ = { 384 | isa = PBXSourcesBuildPhase; 385 | buildActionMask = 2147483647; 386 | files = ( 387 | ); 388 | runOnlyForDeploymentPostprocessing = 0; 389 | }; 390 | /* End PBXSourcesBuildPhase section */ 391 | 392 | /* Begin XCBuildConfiguration section */ 393 | D228BC9E1992CA4A004BB7D8 /* Debug */ = { 394 | isa = XCBuildConfiguration; 395 | buildSettings = { 396 | ALWAYS_SEARCH_USER_PATHS = NO; 397 | CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; 398 | CLANG_CXX_LIBRARY = "libc++"; 399 | CLANG_ENABLE_MODULES = YES; 400 | CLANG_ENABLE_OBJC_ARC = YES; 401 | CLANG_WARN_BOOL_CONVERSION = YES; 402 | CLANG_WARN_CONSTANT_CONVERSION = YES; 403 | CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; 404 | CLANG_WARN_EMPTY_BODY = YES; 405 | CLANG_WARN_ENUM_CONVERSION = YES; 406 | CLANG_WARN_INT_CONVERSION = YES; 407 | CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; 408 | CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; 409 | COPY_PHASE_STRIP = NO; 410 | GCC_C_LANGUAGE_STANDARD = gnu99; 411 | GCC_DYNAMIC_NO_PIC = NO; 412 | GCC_OPTIMIZATION_LEVEL = 0; 413 | GCC_PREPROCESSOR_DEFINITIONS = ( 414 | "DEBUG=1", 415 | "$(inherited)", 416 | ); 417 | GCC_SYMBOLS_PRIVATE_EXTERN = NO; 418 | GCC_WARN_64_TO_32_BIT_CONVERSION = YES; 419 | GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; 420 | GCC_WARN_UNDECLARED_SELECTOR = YES; 421 | GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; 422 | GCC_WARN_UNUSED_FUNCTION = YES; 423 | GCC_WARN_UNUSED_VARIABLE = YES; 424 | IPHONEOS_DEPLOYMENT_TARGET = 8.0; 425 | ONLY_ACTIVE_ARCH = YES; 426 | SDKROOT = iphoneos; 427 | }; 428 | name = Debug; 429 | }; 430 | D228BC9F1992CA4A004BB7D8 /* Release */ = { 431 | isa = XCBuildConfiguration; 432 | buildSettings = { 433 | ALWAYS_SEARCH_USER_PATHS = NO; 434 | CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; 435 | CLANG_CXX_LIBRARY = "libc++"; 436 | CLANG_ENABLE_MODULES = YES; 437 | CLANG_ENABLE_OBJC_ARC = YES; 438 | CLANG_WARN_BOOL_CONVERSION = YES; 439 | CLANG_WARN_CONSTANT_CONVERSION = YES; 440 | CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; 441 | CLANG_WARN_EMPTY_BODY = YES; 442 | CLANG_WARN_ENUM_CONVERSION = YES; 443 | CLANG_WARN_INT_CONVERSION = YES; 444 | CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; 445 | CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; 446 | COPY_PHASE_STRIP = YES; 447 | ENABLE_NS_ASSERTIONS = NO; 448 | GCC_C_LANGUAGE_STANDARD = gnu99; 449 | GCC_WARN_64_TO_32_BIT_CONVERSION = YES; 450 | GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; 451 | GCC_WARN_UNDECLARED_SELECTOR = YES; 452 | GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; 453 | GCC_WARN_UNUSED_FUNCTION = YES; 454 | GCC_WARN_UNUSED_VARIABLE = YES; 455 | IPHONEOS_DEPLOYMENT_TARGET = 8.0; 456 | SDKROOT = iphoneos; 457 | VALIDATE_PRODUCT = YES; 458 | }; 459 | name = Release; 460 | }; 461 | D228BCA11992CA4A004BB7D8 /* Debug */ = { 462 | isa = XCBuildConfiguration; 463 | buildSettings = { 464 | DSTROOT = /tmp/FVCustomAlertView.dst; 465 | FRAMEWORK_SEARCH_PATHS = ( 466 | "$(inherited)", 467 | "$(DEVELOPER_FRAMEWORKS_DIR)", 468 | ); 469 | GCC_PRECOMPILE_PREFIX_HEADER = YES; 470 | GCC_PREFIX_HEADER = "FVCustomAlertView/FVCustomAlertView-Prefix.pch"; 471 | OTHER_LDFLAGS = "-ObjC"; 472 | PRODUCT_NAME = "$(TARGET_NAME)"; 473 | SKIP_INSTALL = YES; 474 | }; 475 | name = Debug; 476 | }; 477 | D228BCA21992CA4A004BB7D8 /* Release */ = { 478 | isa = XCBuildConfiguration; 479 | buildSettings = { 480 | DSTROOT = /tmp/FVCustomAlertView.dst; 481 | FRAMEWORK_SEARCH_PATHS = ( 482 | "$(inherited)", 483 | "$(DEVELOPER_FRAMEWORKS_DIR)", 484 | ); 485 | GCC_PRECOMPILE_PREFIX_HEADER = YES; 486 | GCC_PREFIX_HEADER = "FVCustomAlertView/FVCustomAlertView-Prefix.pch"; 487 | OTHER_LDFLAGS = "-ObjC"; 488 | PRODUCT_NAME = "$(TARGET_NAME)"; 489 | SKIP_INSTALL = YES; 490 | }; 491 | name = Release; 492 | }; 493 | D228BD251992CED5004BB7D8 /* Debug */ = { 494 | isa = XCBuildConfiguration; 495 | buildSettings = { 496 | COMBINE_HIDPI_IMAGES = YES; 497 | GCC_ENABLE_OBJC_EXCEPTIONS = YES; 498 | GCC_PRECOMPILE_PREFIX_HEADER = YES; 499 | GCC_PREFIX_HEADER = "FVCustomAlertViewResources/FVCustomAlertViewResources-Prefix.pch"; 500 | GCC_PREPROCESSOR_DEFINITIONS = ( 501 | "DEBUG=1", 502 | "$(inherited)", 503 | ); 504 | INFOPLIST_FILE = "FVCustomAlertViewResources/FVCustomAlertViewResources-Info.plist"; 505 | INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Bundles"; 506 | MACOSX_DEPLOYMENT_TARGET = 10.9; 507 | PRODUCT_NAME = "$(TARGET_NAME)"; 508 | SDKROOT = iphoneos; 509 | WRAPPER_EXTENSION = bundle; 510 | }; 511 | name = Debug; 512 | }; 513 | D228BD261992CED5004BB7D8 /* Release */ = { 514 | isa = XCBuildConfiguration; 515 | buildSettings = { 516 | COMBINE_HIDPI_IMAGES = YES; 517 | DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; 518 | GCC_ENABLE_OBJC_EXCEPTIONS = YES; 519 | GCC_PRECOMPILE_PREFIX_HEADER = YES; 520 | GCC_PREFIX_HEADER = "FVCustomAlertViewResources/FVCustomAlertViewResources-Prefix.pch"; 521 | INFOPLIST_FILE = "FVCustomAlertViewResources/FVCustomAlertViewResources-Info.plist"; 522 | INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Bundles"; 523 | MACOSX_DEPLOYMENT_TARGET = 10.9; 524 | PRODUCT_NAME = "$(TARGET_NAME)"; 525 | SDKROOT = iphoneos; 526 | WRAPPER_EXTENSION = bundle; 527 | }; 528 | name = Release; 529 | }; 530 | /* End XCBuildConfiguration section */ 531 | 532 | /* Begin XCConfigurationList section */ 533 | D228BC781992CA4A004BB7D8 /* Build configuration list for PBXProject "FVCustomAlertView" */ = { 534 | isa = XCConfigurationList; 535 | buildConfigurations = ( 536 | D228BC9E1992CA4A004BB7D8 /* Debug */, 537 | D228BC9F1992CA4A004BB7D8 /* Release */, 538 | ); 539 | defaultConfigurationIsVisible = 0; 540 | defaultConfigurationName = Release; 541 | }; 542 | D228BCA01992CA4A004BB7D8 /* Build configuration list for PBXNativeTarget "FVCustomAlertView" */ = { 543 | isa = XCConfigurationList; 544 | buildConfigurations = ( 545 | D228BCA11992CA4A004BB7D8 /* Debug */, 546 | D228BCA21992CA4A004BB7D8 /* Release */, 547 | ); 548 | defaultConfigurationIsVisible = 0; 549 | defaultConfigurationName = Release; 550 | }; 551 | D228BD241992CED5004BB7D8 /* Build configuration list for PBXNativeTarget "FVCustomAlertViewResources" */ = { 552 | isa = XCConfigurationList; 553 | buildConfigurations = ( 554 | D228BD251992CED5004BB7D8 /* Debug */, 555 | D228BD261992CED5004BB7D8 /* Release */, 556 | ); 557 | defaultConfigurationIsVisible = 0; 558 | defaultConfigurationName = Release; 559 | }; 560 | /* End XCConfigurationList section */ 561 | }; 562 | rootObject = D228BC751992CA4A004BB7D8 /* Project object */; 563 | } 564 | --------------------------------------------------------------------------------