From 18bbb128ddb93cf9b201bd8d5b9130dd16eed7aa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=97=B6=E7=82=B9=E8=BD=AF=E4=BB=B6=20=E5=86=AF=E6=88=90?= =?UTF-8?q?=E6=9E=97?= Date: Mon, 30 Nov 2015 17:45:37 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9E=81=E5=A4=A7=E7=9A=84=E7=B2=BE=E7=AE=80?= =?UTF-8?q?=E4=BA=86=E6=A1=86=E6=9E=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- CoreNewFeatureVC.xcodeproj/project.pbxproj | 376 +---------------- .../UserInterfaceState.xcuserstate | Bin 12245 -> 13534 bytes CoreNewFeatureVC/AppDelegate.m | 3 +- .../Category/UIView+NFLayout.h | 15 + .../Category/UIView+NFLayout.m | 26 ++ .../CoreNewFeatureVC/CoreNewFeatureVC.m | 11 +- .../CoreArchive/Category/NSString+File.h | 42 -- .../CoreArchive/Category/NSString+File.m | 62 --- .../FrameWorks/CoreArchive/CoreArchive.h | 93 ---- .../FrameWorks/CoreArchive/CoreArchive.m | 144 ------- .../CoreCategory/CALayer/CALayer+Anim.h | 42 -- .../CoreCategory/CALayer/CALayer+Anim.m | 82 ---- .../CoreCategory/CALayer/CALayer+Transition.h | 110 ----- .../CoreCategory/CALayer/CALayer+Transition.m | 111 ----- .../CoreCategory/NSArray/NSArray+Extend.h | 36 -- .../CoreCategory/NSArray/NSArray+Extend.m | 95 ----- .../CoreCategory/NSDate/NSDate+Extend.h | 68 --- .../CoreCategory/NSDate/NSDate+Extend.m | 208 --------- .../CoreCategory/NSObject/NSObject+Extend.h | 26 -- .../CoreCategory/NSObject/NSObject+Extend.m | 41 -- .../CoreCategory/NSString/NSString+Extend.h | 26 -- .../CoreCategory/NSString/NSString+Extend.m | 28 -- .../CoreCategory/NSString/NSString+Password.h | 35 -- .../CoreCategory/NSString/NSString+Password.m | 62 --- .../UIBarButtonItem/UIBarButtonItem+Extend.h | 20 - .../UIBarButtonItem/UIBarButtonItem+Extend.m | 38 -- .../CoreCategory/UIColor/UIColor+Extend.h | 42 -- .../CoreCategory/UIColor/UIColor+Extend.m | 51 --- .../CoreCategory/UIDevice/UIDevice+Extend.h | 29 -- .../CoreCategory/UIDevice/UIDevice+Extend.m | 13 - .../CoreCategory/UIFont/UIFont+Extend.h | 49 --- .../CoreCategory/UIFont/UIFont+Extend.m | 78 ---- .../CoreCategory/UIImage/UIImage+Color.h | 25 -- .../CoreCategory/UIImage/UIImage+Color.m | 78 ---- .../CoreCategory/UIImage/UIImage+Cut.h | 55 --- .../CoreCategory/UIImage/UIImage+Cut.m | 123 ------ .../CoreCategory/UIImage/UIImage+Extend.h | 50 --- .../CoreCategory/UIImage/UIImage+Extend.m | 142 ------- .../UIImage/UIImage+FixOrientation.h | 15 - .../UIImage/UIImage+FixOrientation.m | 92 ---- .../CoreCategory/UIImage/UIImage+Water.h | 51 --- .../CoreCategory/UIImage/UIImage+Water.m | 112 ----- .../UITableViewCell/UITableViewCell+Extend.h | 36 -- .../UITableViewCell/UITableViewCell+Extend.m | 59 --- .../CoreCategory/UIView/UIView+Extend.h | 86 ---- .../CoreCategory/UIView/UIView+Extend.m | 255 ----------- .../CoreCategory/UIWindow/UIWindow+Launch.h | 48 --- .../CoreCategory/UIWindow/UIWindow+Launch.m | 42 -- .../FrameWorks/CoreExtend/CoreConst.h | 36 -- .../FrameWorks/Masonry/LIb/Masonry/Info.plist | 26 -- .../LIb/Masonry/MASCompositeConstraint.h | 26 -- .../LIb/Masonry/MASCompositeConstraint.m | 177 -------- .../LIb/Masonry/MASConstraint+Private.h | 66 --- .../Masonry/LIb/Masonry/MASConstraint.h | 251 ----------- .../Masonry/LIb/Masonry/MASConstraint.m | 281 ------------- .../Masonry/LIb/Masonry/MASConstraintMaker.h | 132 ------ .../Masonry/LIb/Masonry/MASConstraintMaker.m | 250 ----------- .../Masonry/LIb/Masonry/MASLayoutConstraint.h | 22 - .../Masonry/LIb/Masonry/MASLayoutConstraint.m | 13 - .../Masonry/LIb/Masonry/MASUtilities.h | 131 ------ .../Masonry/LIb/Masonry/MASViewAttribute.h | 39 -- .../Masonry/LIb/Masonry/MASViewAttribute.m | 40 -- .../Masonry/LIb/Masonry/MASViewConstraint.h | 48 --- .../Masonry/LIb/Masonry/MASViewConstraint.m | 396 ------------------ .../FrameWorks/Masonry/LIb/Masonry/Masonry.h | 28 -- .../LIb/Masonry/NSArray+MASAdditions.h | 47 --- .../LIb/Masonry/NSArray+MASAdditions.m | 41 -- .../Masonry/NSArray+MASShorthandAdditions.h | 41 -- .../NSLayoutConstraint+MASDebugAdditions.h | 16 - .../NSLayoutConstraint+MASDebugAdditions.m | 141 ------- .../Masonry/LIb/Masonry/View+MASAdditions.h | 94 ----- .../Masonry/LIb/Masonry/View+MASAdditions.m | 155 ------- .../LIb/Masonry/View+MASShorthandAdditions.h | 101 ----- .../FrameWorks/Masonry/UIView+Masony.h | 25 -- .../FrameWorks/Masonry/UIView+Masony.m | 33 -- 75 files changed, 53 insertions(+), 5934 deletions(-) create mode 100644 CoreNewFeatureVC/CoreNewFeatureVC/Category/UIView+NFLayout.h create mode 100644 CoreNewFeatureVC/CoreNewFeatureVC/Category/UIView+NFLayout.m delete mode 100644 CoreNewFeatureVC/FrameWorks/CoreArchive/Category/NSString+File.h delete mode 100644 CoreNewFeatureVC/FrameWorks/CoreArchive/Category/NSString+File.m delete mode 100755 CoreNewFeatureVC/FrameWorks/CoreArchive/CoreArchive.h delete mode 100755 CoreNewFeatureVC/FrameWorks/CoreArchive/CoreArchive.m delete mode 100644 CoreNewFeatureVC/FrameWorks/CoreCategory/CALayer/CALayer+Anim.h delete mode 100644 CoreNewFeatureVC/FrameWorks/CoreCategory/CALayer/CALayer+Anim.m delete mode 100644 CoreNewFeatureVC/FrameWorks/CoreCategory/CALayer/CALayer+Transition.h delete mode 100644 CoreNewFeatureVC/FrameWorks/CoreCategory/CALayer/CALayer+Transition.m delete mode 100755 CoreNewFeatureVC/FrameWorks/CoreCategory/NSArray/NSArray+Extend.h delete mode 100755 CoreNewFeatureVC/FrameWorks/CoreCategory/NSArray/NSArray+Extend.m delete mode 100644 CoreNewFeatureVC/FrameWorks/CoreCategory/NSDate/NSDate+Extend.h delete mode 100644 CoreNewFeatureVC/FrameWorks/CoreCategory/NSDate/NSDate+Extend.m delete mode 100755 CoreNewFeatureVC/FrameWorks/CoreCategory/NSObject/NSObject+Extend.h delete mode 100755 CoreNewFeatureVC/FrameWorks/CoreCategory/NSObject/NSObject+Extend.m delete mode 100644 CoreNewFeatureVC/FrameWorks/CoreCategory/NSString/NSString+Extend.h delete mode 100644 CoreNewFeatureVC/FrameWorks/CoreCategory/NSString/NSString+Extend.m delete mode 100755 CoreNewFeatureVC/FrameWorks/CoreCategory/NSString/NSString+Password.h delete mode 100755 CoreNewFeatureVC/FrameWorks/CoreCategory/NSString/NSString+Password.m delete mode 100644 CoreNewFeatureVC/FrameWorks/CoreCategory/UIBarButtonItem/UIBarButtonItem+Extend.h delete mode 100644 CoreNewFeatureVC/FrameWorks/CoreCategory/UIBarButtonItem/UIBarButtonItem+Extend.m delete mode 100755 CoreNewFeatureVC/FrameWorks/CoreCategory/UIColor/UIColor+Extend.h delete mode 100755 CoreNewFeatureVC/FrameWorks/CoreCategory/UIColor/UIColor+Extend.m delete mode 100644 CoreNewFeatureVC/FrameWorks/CoreCategory/UIDevice/UIDevice+Extend.h delete mode 100644 CoreNewFeatureVC/FrameWorks/CoreCategory/UIDevice/UIDevice+Extend.m delete mode 100755 CoreNewFeatureVC/FrameWorks/CoreCategory/UIFont/UIFont+Extend.h delete mode 100755 CoreNewFeatureVC/FrameWorks/CoreCategory/UIFont/UIFont+Extend.m delete mode 100755 CoreNewFeatureVC/FrameWorks/CoreCategory/UIImage/UIImage+Color.h delete mode 100755 CoreNewFeatureVC/FrameWorks/CoreCategory/UIImage/UIImage+Color.m delete mode 100755 CoreNewFeatureVC/FrameWorks/CoreCategory/UIImage/UIImage+Cut.h delete mode 100755 CoreNewFeatureVC/FrameWorks/CoreCategory/UIImage/UIImage+Cut.m delete mode 100755 CoreNewFeatureVC/FrameWorks/CoreCategory/UIImage/UIImage+Extend.h delete mode 100755 CoreNewFeatureVC/FrameWorks/CoreCategory/UIImage/UIImage+Extend.m delete mode 100755 CoreNewFeatureVC/FrameWorks/CoreCategory/UIImage/UIImage+FixOrientation.h delete mode 100755 CoreNewFeatureVC/FrameWorks/CoreCategory/UIImage/UIImage+FixOrientation.m delete mode 100644 CoreNewFeatureVC/FrameWorks/CoreCategory/UIImage/UIImage+Water.h delete mode 100644 CoreNewFeatureVC/FrameWorks/CoreCategory/UIImage/UIImage+Water.m delete mode 100644 CoreNewFeatureVC/FrameWorks/CoreCategory/UITableViewCell/UITableViewCell+Extend.h delete mode 100644 CoreNewFeatureVC/FrameWorks/CoreCategory/UITableViewCell/UITableViewCell+Extend.m delete mode 100755 CoreNewFeatureVC/FrameWorks/CoreCategory/UIView/UIView+Extend.h delete mode 100755 CoreNewFeatureVC/FrameWorks/CoreCategory/UIView/UIView+Extend.m delete mode 100755 CoreNewFeatureVC/FrameWorks/CoreCategory/UIWindow/UIWindow+Launch.h delete mode 100755 CoreNewFeatureVC/FrameWorks/CoreCategory/UIWindow/UIWindow+Launch.m delete mode 100755 CoreNewFeatureVC/FrameWorks/CoreExtend/CoreConst.h delete mode 100755 CoreNewFeatureVC/FrameWorks/Masonry/LIb/Masonry/Info.plist delete mode 100755 CoreNewFeatureVC/FrameWorks/Masonry/LIb/Masonry/MASCompositeConstraint.h delete mode 100755 CoreNewFeatureVC/FrameWorks/Masonry/LIb/Masonry/MASCompositeConstraint.m delete mode 100755 CoreNewFeatureVC/FrameWorks/Masonry/LIb/Masonry/MASConstraint+Private.h delete mode 100755 CoreNewFeatureVC/FrameWorks/Masonry/LIb/Masonry/MASConstraint.h delete mode 100755 CoreNewFeatureVC/FrameWorks/Masonry/LIb/Masonry/MASConstraint.m delete mode 100755 CoreNewFeatureVC/FrameWorks/Masonry/LIb/Masonry/MASConstraintMaker.h delete mode 100755 CoreNewFeatureVC/FrameWorks/Masonry/LIb/Masonry/MASConstraintMaker.m delete mode 100755 CoreNewFeatureVC/FrameWorks/Masonry/LIb/Masonry/MASLayoutConstraint.h delete mode 100755 CoreNewFeatureVC/FrameWorks/Masonry/LIb/Masonry/MASLayoutConstraint.m delete mode 100755 CoreNewFeatureVC/FrameWorks/Masonry/LIb/Masonry/MASUtilities.h delete mode 100755 CoreNewFeatureVC/FrameWorks/Masonry/LIb/Masonry/MASViewAttribute.h delete mode 100755 CoreNewFeatureVC/FrameWorks/Masonry/LIb/Masonry/MASViewAttribute.m delete mode 100755 CoreNewFeatureVC/FrameWorks/Masonry/LIb/Masonry/MASViewConstraint.h delete mode 100755 CoreNewFeatureVC/FrameWorks/Masonry/LIb/Masonry/MASViewConstraint.m delete mode 100755 CoreNewFeatureVC/FrameWorks/Masonry/LIb/Masonry/Masonry.h delete mode 100755 CoreNewFeatureVC/FrameWorks/Masonry/LIb/Masonry/NSArray+MASAdditions.h delete mode 100755 CoreNewFeatureVC/FrameWorks/Masonry/LIb/Masonry/NSArray+MASAdditions.m delete mode 100755 CoreNewFeatureVC/FrameWorks/Masonry/LIb/Masonry/NSArray+MASShorthandAdditions.h delete mode 100755 CoreNewFeatureVC/FrameWorks/Masonry/LIb/Masonry/NSLayoutConstraint+MASDebugAdditions.h delete mode 100755 CoreNewFeatureVC/FrameWorks/Masonry/LIb/Masonry/NSLayoutConstraint+MASDebugAdditions.m delete mode 100755 CoreNewFeatureVC/FrameWorks/Masonry/LIb/Masonry/View+MASAdditions.h delete mode 100755 CoreNewFeatureVC/FrameWorks/Masonry/LIb/Masonry/View+MASAdditions.m delete mode 100755 CoreNewFeatureVC/FrameWorks/Masonry/LIb/Masonry/View+MASShorthandAdditions.h delete mode 100644 CoreNewFeatureVC/FrameWorks/Masonry/UIView+Masony.h delete mode 100644 CoreNewFeatureVC/FrameWorks/Masonry/UIView+Masony.m diff --git a/CoreNewFeatureVC.xcodeproj/project.pbxproj b/CoreNewFeatureVC.xcodeproj/project.pbxproj index 1562cb5..a82e0ec 100644 --- a/CoreNewFeatureVC.xcodeproj/project.pbxproj +++ b/CoreNewFeatureVC.xcodeproj/project.pbxproj @@ -7,6 +7,7 @@ objects = { /* Begin PBXBuildFile section */ + 892BCE871C0C5145008F84A3 /* UIView+NFLayout.m in Sources */ = {isa = PBXBuildFile; fileRef = 892BCE861C0C5145008F84A3 /* UIView+NFLayout.m */; }; 89335F651AEDFEE800BC444B /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 89335F641AEDFEE800BC444B /* main.m */; }; 89335F681AEDFEE800BC444B /* AppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 89335F671AEDFEE800BC444B /* AppDelegate.m */; }; 89335F6E1AEDFEE800BC444B /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 89335F6C1AEDFEE800BC444B /* Main.storyboard */; }; @@ -15,41 +16,9 @@ 89335F7F1AEDFEE800BC444B /* CoreNewFeatureVCTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 89335F7E1AEDFEE800BC444B /* CoreNewFeatureVCTests.m */; }; 89335F8E1AEDFF5300BC444B /* CoreNewFeatureVC.m in Sources */ = {isa = PBXBuildFile; fileRef = 89335F8D1AEDFF5300BC444B /* CoreNewFeatureVC.m */; }; 89335F911AEDFF8000BC444B /* NewFeatureModel.m in Sources */ = {isa = PBXBuildFile; fileRef = 89335F901AEDFF8000BC444B /* NewFeatureModel.m */; }; - 89335FB01AEE00CC00BC444B /* Info.plist in Resources */ = {isa = PBXBuildFile; fileRef = 89335F961AEE00CC00BC444B /* Info.plist */; }; - 89335FB11AEE00CC00BC444B /* MASCompositeConstraint.m in Sources */ = {isa = PBXBuildFile; fileRef = 89335F981AEE00CC00BC444B /* MASCompositeConstraint.m */; }; - 89335FB21AEE00CC00BC444B /* MASConstraint.m in Sources */ = {isa = PBXBuildFile; fileRef = 89335F9B1AEE00CC00BC444B /* MASConstraint.m */; }; - 89335FB31AEE00CC00BC444B /* MASConstraintMaker.m in Sources */ = {isa = PBXBuildFile; fileRef = 89335F9D1AEE00CC00BC444B /* MASConstraintMaker.m */; }; - 89335FB41AEE00CC00BC444B /* MASLayoutConstraint.m in Sources */ = {isa = PBXBuildFile; fileRef = 89335F9F1AEE00CC00BC444B /* MASLayoutConstraint.m */; }; - 89335FB51AEE00CC00BC444B /* MASViewAttribute.m in Sources */ = {isa = PBXBuildFile; fileRef = 89335FA31AEE00CC00BC444B /* MASViewAttribute.m */; }; - 89335FB61AEE00CC00BC444B /* MASViewConstraint.m in Sources */ = {isa = PBXBuildFile; fileRef = 89335FA51AEE00CC00BC444B /* MASViewConstraint.m */; }; - 89335FB71AEE00CC00BC444B /* NSArray+MASAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = 89335FA71AEE00CC00BC444B /* NSArray+MASAdditions.m */; }; - 89335FB81AEE00CC00BC444B /* NSLayoutConstraint+MASDebugAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = 89335FAA1AEE00CC00BC444B /* NSLayoutConstraint+MASDebugAdditions.m */; }; - 89335FB91AEE00CC00BC444B /* View+MASAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = 89335FAC1AEE00CC00BC444B /* View+MASAdditions.m */; }; - 89335FBA1AEE00CC00BC444B /* UIView+Masony.m in Sources */ = {isa = PBXBuildFile; fileRef = 89335FAF1AEE00CC00BC444B /* UIView+Masony.m */; }; 89335FBD1AEE022C00BC444B /* NewFeatureScrollView.m in Sources */ = {isa = PBXBuildFile; fileRef = 89335FBC1AEE022C00BC444B /* NewFeatureScrollView.m */; }; 89335FC01AEE057C00BC444B /* NewFeatureImageV.m in Sources */ = {isa = PBXBuildFile; fileRef = 89335FBF1AEE057C00BC444B /* NewFeatureImageV.m */; }; 89335FC51AEE0AD200BC444B /* UIApplication+Extend.m in Sources */ = {isa = PBXBuildFile; fileRef = 89335FC41AEE0AD200BC444B /* UIApplication+Extend.m */; }; - 89335FD01AEE0B8B00BC444B /* NSString+File.m in Sources */ = {isa = PBXBuildFile; fileRef = 89335FCD1AEE0B8B00BC444B /* NSString+File.m */; }; - 89335FD11AEE0B8B00BC444B /* CoreArchive.m in Sources */ = {isa = PBXBuildFile; fileRef = 89335FCF1AEE0B8B00BC444B /* CoreArchive.m */; }; - 8960307B1B0190BD009ACD03 /* CALayer+Anim.m in Sources */ = {isa = PBXBuildFile; fileRef = 8960304A1B0190BD009ACD03 /* CALayer+Anim.m */; }; - 8960307C1B0190BD009ACD03 /* CALayer+Transition.m in Sources */ = {isa = PBXBuildFile; fileRef = 8960304C1B0190BD009ACD03 /* CALayer+Transition.m */; }; - 8960307D1B0190BD009ACD03 /* NSArray+Extend.m in Sources */ = {isa = PBXBuildFile; fileRef = 8960304F1B0190BD009ACD03 /* NSArray+Extend.m */; }; - 8960307E1B0190BD009ACD03 /* NSDate+Extend.m in Sources */ = {isa = PBXBuildFile; fileRef = 896030521B0190BD009ACD03 /* NSDate+Extend.m */; }; - 8960307F1B0190BD009ACD03 /* NSObject+Extend.m in Sources */ = {isa = PBXBuildFile; fileRef = 896030551B0190BD009ACD03 /* NSObject+Extend.m */; }; - 896030801B0190BD009ACD03 /* NSString+Extend.m in Sources */ = {isa = PBXBuildFile; fileRef = 896030581B0190BD009ACD03 /* NSString+Extend.m */; }; - 896030811B0190BD009ACD03 /* NSString+Password.m in Sources */ = {isa = PBXBuildFile; fileRef = 8960305A1B0190BD009ACD03 /* NSString+Password.m */; }; - 896030821B0190BD009ACD03 /* UIBarButtonItem+Extend.m in Sources */ = {isa = PBXBuildFile; fileRef = 8960305D1B0190BD009ACD03 /* UIBarButtonItem+Extend.m */; }; - 896030831B0190BD009ACD03 /* UIColor+Extend.m in Sources */ = {isa = PBXBuildFile; fileRef = 896030601B0190BD009ACD03 /* UIColor+Extend.m */; }; - 896030841B0190BD009ACD03 /* UIDevice+Extend.m in Sources */ = {isa = PBXBuildFile; fileRef = 896030631B0190BD009ACD03 /* UIDevice+Extend.m */; }; - 896030851B0190BD009ACD03 /* UIFont+Extend.m in Sources */ = {isa = PBXBuildFile; fileRef = 896030661B0190BD009ACD03 /* UIFont+Extend.m */; }; - 896030861B0190BD009ACD03 /* UIImage+Color.m in Sources */ = {isa = PBXBuildFile; fileRef = 896030691B0190BD009ACD03 /* UIImage+Color.m */; }; - 896030871B0190BD009ACD03 /* UIImage+Cut.m in Sources */ = {isa = PBXBuildFile; fileRef = 8960306B1B0190BD009ACD03 /* UIImage+Cut.m */; }; - 896030881B0190BD009ACD03 /* UIImage+Extend.m in Sources */ = {isa = PBXBuildFile; fileRef = 8960306D1B0190BD009ACD03 /* UIImage+Extend.m */; }; - 896030891B0190BD009ACD03 /* UIImage+FixOrientation.m in Sources */ = {isa = PBXBuildFile; fileRef = 8960306F1B0190BD009ACD03 /* UIImage+FixOrientation.m */; }; - 8960308A1B0190BD009ACD03 /* UIImage+Water.m in Sources */ = {isa = PBXBuildFile; fileRef = 896030711B0190BD009ACD03 /* UIImage+Water.m */; }; - 8960308B1B0190BD009ACD03 /* UITableViewCell+Extend.m in Sources */ = {isa = PBXBuildFile; fileRef = 896030741B0190BD009ACD03 /* UITableViewCell+Extend.m */; }; - 8960308C1B0190BD009ACD03 /* UIView+Extend.m in Sources */ = {isa = PBXBuildFile; fileRef = 896030771B0190BD009ACD03 /* UIView+Extend.m */; }; - 8960308D1B0190BD009ACD03 /* UIWindow+Launch.m in Sources */ = {isa = PBXBuildFile; fileRef = 8960307A1B0190BD009ACD03 /* UIWindow+Launch.m */; }; 896030911B0191E2009ACD03 /* 1.gif in Resources */ = {isa = PBXBuildFile; fileRef = 896030901B0191E2009ACD03 /* 1.gif */; }; /* End PBXBuildFile section */ @@ -64,6 +33,8 @@ /* End PBXContainerItemProxy section */ /* Begin PBXFileReference section */ + 892BCE851C0C5145008F84A3 /* UIView+NFLayout.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "UIView+NFLayout.h"; sourceTree = ""; }; + 892BCE861C0C5145008F84A3 /* UIView+NFLayout.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "UIView+NFLayout.m"; sourceTree = ""; }; 89335F5F1AEDFEE800BC444B /* CoreNewFeatureVC.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = CoreNewFeatureVC.app; sourceTree = BUILT_PRODUCTS_DIR; }; 89335F631AEDFEE800BC444B /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; 89335F641AEDFEE800BC444B /* main.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = ""; }; @@ -79,81 +50,12 @@ 89335F8D1AEDFF5300BC444B /* CoreNewFeatureVC.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CoreNewFeatureVC.m; sourceTree = ""; }; 89335F8F1AEDFF8000BC444B /* NewFeatureModel.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NewFeatureModel.h; sourceTree = ""; }; 89335F901AEDFF8000BC444B /* NewFeatureModel.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = NewFeatureModel.m; sourceTree = ""; }; - 89335F961AEE00CC00BC444B /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - 89335F971AEE00CC00BC444B /* MASCompositeConstraint.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MASCompositeConstraint.h; sourceTree = ""; }; - 89335F981AEE00CC00BC444B /* MASCompositeConstraint.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MASCompositeConstraint.m; sourceTree = ""; }; - 89335F991AEE00CC00BC444B /* MASConstraint+Private.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MASConstraint+Private.h"; sourceTree = ""; }; - 89335F9A1AEE00CC00BC444B /* MASConstraint.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MASConstraint.h; sourceTree = ""; }; - 89335F9B1AEE00CC00BC444B /* MASConstraint.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MASConstraint.m; sourceTree = ""; }; - 89335F9C1AEE00CC00BC444B /* MASConstraintMaker.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MASConstraintMaker.h; sourceTree = ""; }; - 89335F9D1AEE00CC00BC444B /* MASConstraintMaker.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MASConstraintMaker.m; sourceTree = ""; }; - 89335F9E1AEE00CC00BC444B /* MASLayoutConstraint.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MASLayoutConstraint.h; sourceTree = ""; }; - 89335F9F1AEE00CC00BC444B /* MASLayoutConstraint.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MASLayoutConstraint.m; sourceTree = ""; }; - 89335FA01AEE00CC00BC444B /* Masonry.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Masonry.h; sourceTree = ""; }; - 89335FA11AEE00CC00BC444B /* MASUtilities.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MASUtilities.h; sourceTree = ""; }; - 89335FA21AEE00CC00BC444B /* MASViewAttribute.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MASViewAttribute.h; sourceTree = ""; }; - 89335FA31AEE00CC00BC444B /* MASViewAttribute.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MASViewAttribute.m; sourceTree = ""; }; - 89335FA41AEE00CC00BC444B /* MASViewConstraint.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MASViewConstraint.h; sourceTree = ""; }; - 89335FA51AEE00CC00BC444B /* MASViewConstraint.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MASViewConstraint.m; sourceTree = ""; }; - 89335FA61AEE00CC00BC444B /* NSArray+MASAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSArray+MASAdditions.h"; sourceTree = ""; }; - 89335FA71AEE00CC00BC444B /* NSArray+MASAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSArray+MASAdditions.m"; sourceTree = ""; }; - 89335FA81AEE00CC00BC444B /* NSArray+MASShorthandAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSArray+MASShorthandAdditions.h"; sourceTree = ""; }; - 89335FA91AEE00CC00BC444B /* NSLayoutConstraint+MASDebugAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSLayoutConstraint+MASDebugAdditions.h"; sourceTree = ""; }; - 89335FAA1AEE00CC00BC444B /* NSLayoutConstraint+MASDebugAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSLayoutConstraint+MASDebugAdditions.m"; sourceTree = ""; }; - 89335FAB1AEE00CC00BC444B /* View+MASAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "View+MASAdditions.h"; sourceTree = ""; }; - 89335FAC1AEE00CC00BC444B /* View+MASAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "View+MASAdditions.m"; sourceTree = ""; }; - 89335FAD1AEE00CC00BC444B /* View+MASShorthandAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "View+MASShorthandAdditions.h"; sourceTree = ""; }; - 89335FAE1AEE00CC00BC444B /* UIView+Masony.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "UIView+Masony.h"; sourceTree = ""; }; - 89335FAF1AEE00CC00BC444B /* UIView+Masony.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "UIView+Masony.m"; sourceTree = ""; }; 89335FBB1AEE022C00BC444B /* NewFeatureScrollView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NewFeatureScrollView.h; sourceTree = ""; }; 89335FBC1AEE022C00BC444B /* NewFeatureScrollView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = NewFeatureScrollView.m; sourceTree = ""; }; 89335FBE1AEE057C00BC444B /* NewFeatureImageV.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NewFeatureImageV.h; sourceTree = ""; }; 89335FBF1AEE057C00BC444B /* NewFeatureImageV.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = NewFeatureImageV.m; sourceTree = ""; }; 89335FC31AEE0AD200BC444B /* UIApplication+Extend.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "UIApplication+Extend.h"; sourceTree = ""; }; 89335FC41AEE0AD200BC444B /* UIApplication+Extend.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "UIApplication+Extend.m"; sourceTree = ""; }; - 89335FCC1AEE0B8B00BC444B /* NSString+File.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSString+File.h"; sourceTree = ""; }; - 89335FCD1AEE0B8B00BC444B /* NSString+File.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSString+File.m"; sourceTree = ""; }; - 89335FCE1AEE0B8B00BC444B /* CoreArchive.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CoreArchive.h; sourceTree = ""; }; - 89335FCF1AEE0B8B00BC444B /* CoreArchive.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CoreArchive.m; sourceTree = ""; }; - 896030491B0190BD009ACD03 /* CALayer+Anim.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "CALayer+Anim.h"; sourceTree = ""; }; - 8960304A1B0190BD009ACD03 /* CALayer+Anim.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "CALayer+Anim.m"; sourceTree = ""; }; - 8960304B1B0190BD009ACD03 /* CALayer+Transition.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "CALayer+Transition.h"; sourceTree = ""; }; - 8960304C1B0190BD009ACD03 /* CALayer+Transition.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "CALayer+Transition.m"; sourceTree = ""; }; - 8960304E1B0190BD009ACD03 /* NSArray+Extend.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSArray+Extend.h"; sourceTree = ""; }; - 8960304F1B0190BD009ACD03 /* NSArray+Extend.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSArray+Extend.m"; sourceTree = ""; }; - 896030511B0190BD009ACD03 /* NSDate+Extend.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSDate+Extend.h"; sourceTree = ""; }; - 896030521B0190BD009ACD03 /* NSDate+Extend.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSDate+Extend.m"; sourceTree = ""; }; - 896030541B0190BD009ACD03 /* NSObject+Extend.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSObject+Extend.h"; sourceTree = ""; }; - 896030551B0190BD009ACD03 /* NSObject+Extend.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSObject+Extend.m"; sourceTree = ""; }; - 896030571B0190BD009ACD03 /* NSString+Extend.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSString+Extend.h"; sourceTree = ""; }; - 896030581B0190BD009ACD03 /* NSString+Extend.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSString+Extend.m"; sourceTree = ""; }; - 896030591B0190BD009ACD03 /* NSString+Password.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSString+Password.h"; sourceTree = ""; }; - 8960305A1B0190BD009ACD03 /* NSString+Password.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSString+Password.m"; sourceTree = ""; }; - 8960305C1B0190BD009ACD03 /* UIBarButtonItem+Extend.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "UIBarButtonItem+Extend.h"; sourceTree = ""; }; - 8960305D1B0190BD009ACD03 /* UIBarButtonItem+Extend.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "UIBarButtonItem+Extend.m"; sourceTree = ""; }; - 8960305F1B0190BD009ACD03 /* UIColor+Extend.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "UIColor+Extend.h"; sourceTree = ""; }; - 896030601B0190BD009ACD03 /* UIColor+Extend.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "UIColor+Extend.m"; sourceTree = ""; }; - 896030621B0190BD009ACD03 /* UIDevice+Extend.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "UIDevice+Extend.h"; sourceTree = ""; }; - 896030631B0190BD009ACD03 /* UIDevice+Extend.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "UIDevice+Extend.m"; sourceTree = ""; }; - 896030651B0190BD009ACD03 /* UIFont+Extend.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "UIFont+Extend.h"; sourceTree = ""; }; - 896030661B0190BD009ACD03 /* UIFont+Extend.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "UIFont+Extend.m"; sourceTree = ""; }; - 896030681B0190BD009ACD03 /* UIImage+Color.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "UIImage+Color.h"; sourceTree = ""; }; - 896030691B0190BD009ACD03 /* UIImage+Color.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "UIImage+Color.m"; sourceTree = ""; }; - 8960306A1B0190BD009ACD03 /* UIImage+Cut.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "UIImage+Cut.h"; sourceTree = ""; }; - 8960306B1B0190BD009ACD03 /* UIImage+Cut.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "UIImage+Cut.m"; sourceTree = ""; }; - 8960306C1B0190BD009ACD03 /* UIImage+Extend.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "UIImage+Extend.h"; sourceTree = ""; }; - 8960306D1B0190BD009ACD03 /* UIImage+Extend.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "UIImage+Extend.m"; sourceTree = ""; }; - 8960306E1B0190BD009ACD03 /* UIImage+FixOrientation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "UIImage+FixOrientation.h"; sourceTree = ""; }; - 8960306F1B0190BD009ACD03 /* UIImage+FixOrientation.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "UIImage+FixOrientation.m"; sourceTree = ""; }; - 896030701B0190BD009ACD03 /* UIImage+Water.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "UIImage+Water.h"; sourceTree = ""; }; - 896030711B0190BD009ACD03 /* UIImage+Water.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "UIImage+Water.m"; sourceTree = ""; }; - 896030731B0190BD009ACD03 /* UITableViewCell+Extend.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "UITableViewCell+Extend.h"; sourceTree = ""; }; - 896030741B0190BD009ACD03 /* UITableViewCell+Extend.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "UITableViewCell+Extend.m"; sourceTree = ""; }; - 896030761B0190BD009ACD03 /* UIView+Extend.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "UIView+Extend.h"; sourceTree = ""; }; - 896030771B0190BD009ACD03 /* UIView+Extend.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "UIView+Extend.m"; sourceTree = ""; }; - 896030791B0190BD009ACD03 /* UIWindow+Launch.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "UIWindow+Launch.h"; sourceTree = ""; }; - 8960307A1B0190BD009ACD03 /* UIWindow+Launch.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "UIWindow+Launch.m"; sourceTree = ""; }; - 8960308F1B019148009ACD03 /* CoreConst.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CoreConst.h; sourceTree = ""; }; 896030901B0191E2009ACD03 /* 1.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = 1.gif; sourceTree = ""; }; /* End PBXFileReference section */ @@ -197,7 +99,6 @@ isa = PBXGroup; children = ( 89335F881AEDFF2000BC444B /* CoreNewFeatureVC */, - 89335F921AEE00BF00BC444B /* FrameWorks */, 89335F661AEDFEE800BC444B /* AppDelegate.h */, 89335F671AEDFEE800BC444B /* AppDelegate.m */, 89335F6C1AEDFEE800BC444B /* Main.storyboard */, @@ -275,69 +176,11 @@ path = View; sourceTree = ""; }; - 89335F921AEE00BF00BC444B /* FrameWorks */ = { - isa = PBXGroup; - children = ( - 8960308E1B019148009ACD03 /* CoreExtend */, - 896030471B0190BD009ACD03 /* CoreCategory */, - 89335FCA1AEE0B8B00BC444B /* CoreArchive */, - 89335F931AEE00CC00BC444B /* Masonry */, - ); - path = FrameWorks; - sourceTree = ""; - }; - 89335F931AEE00CC00BC444B /* Masonry */ = { - isa = PBXGroup; - children = ( - 89335F941AEE00CC00BC444B /* LIb */, - 89335FAE1AEE00CC00BC444B /* UIView+Masony.h */, - 89335FAF1AEE00CC00BC444B /* UIView+Masony.m */, - ); - path = Masonry; - sourceTree = ""; - }; - 89335F941AEE00CC00BC444B /* LIb */ = { - isa = PBXGroup; - children = ( - 89335F951AEE00CC00BC444B /* Masonry */, - ); - path = LIb; - sourceTree = ""; - }; - 89335F951AEE00CC00BC444B /* Masonry */ = { - isa = PBXGroup; - children = ( - 89335F961AEE00CC00BC444B /* Info.plist */, - 89335F971AEE00CC00BC444B /* MASCompositeConstraint.h */, - 89335F981AEE00CC00BC444B /* MASCompositeConstraint.m */, - 89335F991AEE00CC00BC444B /* MASConstraint+Private.h */, - 89335F9A1AEE00CC00BC444B /* MASConstraint.h */, - 89335F9B1AEE00CC00BC444B /* MASConstraint.m */, - 89335F9C1AEE00CC00BC444B /* MASConstraintMaker.h */, - 89335F9D1AEE00CC00BC444B /* MASConstraintMaker.m */, - 89335F9E1AEE00CC00BC444B /* MASLayoutConstraint.h */, - 89335F9F1AEE00CC00BC444B /* MASLayoutConstraint.m */, - 89335FA01AEE00CC00BC444B /* Masonry.h */, - 89335FA11AEE00CC00BC444B /* MASUtilities.h */, - 89335FA21AEE00CC00BC444B /* MASViewAttribute.h */, - 89335FA31AEE00CC00BC444B /* MASViewAttribute.m */, - 89335FA41AEE00CC00BC444B /* MASViewConstraint.h */, - 89335FA51AEE00CC00BC444B /* MASViewConstraint.m */, - 89335FA61AEE00CC00BC444B /* NSArray+MASAdditions.h */, - 89335FA71AEE00CC00BC444B /* NSArray+MASAdditions.m */, - 89335FA81AEE00CC00BC444B /* NSArray+MASShorthandAdditions.h */, - 89335FA91AEE00CC00BC444B /* NSLayoutConstraint+MASDebugAdditions.h */, - 89335FAA1AEE00CC00BC444B /* NSLayoutConstraint+MASDebugAdditions.m */, - 89335FAB1AEE00CC00BC444B /* View+MASAdditions.h */, - 89335FAC1AEE00CC00BC444B /* View+MASAdditions.m */, - 89335FAD1AEE00CC00BC444B /* View+MASShorthandAdditions.h */, - ); - path = Masonry; - sourceTree = ""; - }; 89335FC11AEE0A9300BC444B /* Category */ = { isa = PBXGroup; children = ( + 892BCE851C0C5145008F84A3 /* UIView+NFLayout.h */, + 892BCE861C0C5145008F84A3 /* UIView+NFLayout.m */, 89335FC21AEE0AD200BC444B /* UIApplication */, ); path = Category; @@ -352,182 +195,6 @@ path = UIApplication; sourceTree = ""; }; - 89335FCA1AEE0B8B00BC444B /* CoreArchive */ = { - isa = PBXGroup; - children = ( - 89335FCB1AEE0B8B00BC444B /* Category */, - 89335FCE1AEE0B8B00BC444B /* CoreArchive.h */, - 89335FCF1AEE0B8B00BC444B /* CoreArchive.m */, - ); - path = CoreArchive; - sourceTree = ""; - }; - 89335FCB1AEE0B8B00BC444B /* Category */ = { - isa = PBXGroup; - children = ( - 89335FCC1AEE0B8B00BC444B /* NSString+File.h */, - 89335FCD1AEE0B8B00BC444B /* NSString+File.m */, - ); - path = Category; - sourceTree = ""; - }; - 896030471B0190BD009ACD03 /* CoreCategory */ = { - isa = PBXGroup; - children = ( - 896030481B0190BD009ACD03 /* CALayer */, - 8960304D1B0190BD009ACD03 /* NSArray */, - 896030501B0190BD009ACD03 /* NSDate */, - 896030531B0190BD009ACD03 /* NSObject */, - 896030561B0190BD009ACD03 /* NSString */, - 8960305B1B0190BD009ACD03 /* UIBarButtonItem */, - 8960305E1B0190BD009ACD03 /* UIColor */, - 896030611B0190BD009ACD03 /* UIDevice */, - 896030641B0190BD009ACD03 /* UIFont */, - 896030671B0190BD009ACD03 /* UIImage */, - 896030721B0190BD009ACD03 /* UITableViewCell */, - 896030751B0190BD009ACD03 /* UIView */, - 896030781B0190BD009ACD03 /* UIWindow */, - ); - path = CoreCategory; - sourceTree = ""; - }; - 896030481B0190BD009ACD03 /* CALayer */ = { - isa = PBXGroup; - children = ( - 896030491B0190BD009ACD03 /* CALayer+Anim.h */, - 8960304A1B0190BD009ACD03 /* CALayer+Anim.m */, - 8960304B1B0190BD009ACD03 /* CALayer+Transition.h */, - 8960304C1B0190BD009ACD03 /* CALayer+Transition.m */, - ); - path = CALayer; - sourceTree = ""; - }; - 8960304D1B0190BD009ACD03 /* NSArray */ = { - isa = PBXGroup; - children = ( - 8960304E1B0190BD009ACD03 /* NSArray+Extend.h */, - 8960304F1B0190BD009ACD03 /* NSArray+Extend.m */, - ); - path = NSArray; - sourceTree = ""; - }; - 896030501B0190BD009ACD03 /* NSDate */ = { - isa = PBXGroup; - children = ( - 896030511B0190BD009ACD03 /* NSDate+Extend.h */, - 896030521B0190BD009ACD03 /* NSDate+Extend.m */, - ); - path = NSDate; - sourceTree = ""; - }; - 896030531B0190BD009ACD03 /* NSObject */ = { - isa = PBXGroup; - children = ( - 896030541B0190BD009ACD03 /* NSObject+Extend.h */, - 896030551B0190BD009ACD03 /* NSObject+Extend.m */, - ); - path = NSObject; - sourceTree = ""; - }; - 896030561B0190BD009ACD03 /* NSString */ = { - isa = PBXGroup; - children = ( - 896030571B0190BD009ACD03 /* NSString+Extend.h */, - 896030581B0190BD009ACD03 /* NSString+Extend.m */, - 896030591B0190BD009ACD03 /* NSString+Password.h */, - 8960305A1B0190BD009ACD03 /* NSString+Password.m */, - ); - path = NSString; - sourceTree = ""; - }; - 8960305B1B0190BD009ACD03 /* UIBarButtonItem */ = { - isa = PBXGroup; - children = ( - 8960305C1B0190BD009ACD03 /* UIBarButtonItem+Extend.h */, - 8960305D1B0190BD009ACD03 /* UIBarButtonItem+Extend.m */, - ); - path = UIBarButtonItem; - sourceTree = ""; - }; - 8960305E1B0190BD009ACD03 /* UIColor */ = { - isa = PBXGroup; - children = ( - 8960305F1B0190BD009ACD03 /* UIColor+Extend.h */, - 896030601B0190BD009ACD03 /* UIColor+Extend.m */, - ); - path = UIColor; - sourceTree = ""; - }; - 896030611B0190BD009ACD03 /* UIDevice */ = { - isa = PBXGroup; - children = ( - 896030621B0190BD009ACD03 /* UIDevice+Extend.h */, - 896030631B0190BD009ACD03 /* UIDevice+Extend.m */, - ); - path = UIDevice; - sourceTree = ""; - }; - 896030641B0190BD009ACD03 /* UIFont */ = { - isa = PBXGroup; - children = ( - 896030651B0190BD009ACD03 /* UIFont+Extend.h */, - 896030661B0190BD009ACD03 /* UIFont+Extend.m */, - ); - path = UIFont; - sourceTree = ""; - }; - 896030671B0190BD009ACD03 /* UIImage */ = { - isa = PBXGroup; - children = ( - 896030681B0190BD009ACD03 /* UIImage+Color.h */, - 896030691B0190BD009ACD03 /* UIImage+Color.m */, - 8960306A1B0190BD009ACD03 /* UIImage+Cut.h */, - 8960306B1B0190BD009ACD03 /* UIImage+Cut.m */, - 8960306C1B0190BD009ACD03 /* UIImage+Extend.h */, - 8960306D1B0190BD009ACD03 /* UIImage+Extend.m */, - 8960306E1B0190BD009ACD03 /* UIImage+FixOrientation.h */, - 8960306F1B0190BD009ACD03 /* UIImage+FixOrientation.m */, - 896030701B0190BD009ACD03 /* UIImage+Water.h */, - 896030711B0190BD009ACD03 /* UIImage+Water.m */, - ); - path = UIImage; - sourceTree = ""; - }; - 896030721B0190BD009ACD03 /* UITableViewCell */ = { - isa = PBXGroup; - children = ( - 896030731B0190BD009ACD03 /* UITableViewCell+Extend.h */, - 896030741B0190BD009ACD03 /* UITableViewCell+Extend.m */, - ); - path = UITableViewCell; - sourceTree = ""; - }; - 896030751B0190BD009ACD03 /* UIView */ = { - isa = PBXGroup; - children = ( - 896030761B0190BD009ACD03 /* UIView+Extend.h */, - 896030771B0190BD009ACD03 /* UIView+Extend.m */, - ); - path = UIView; - sourceTree = ""; - }; - 896030781B0190BD009ACD03 /* UIWindow */ = { - isa = PBXGroup; - children = ( - 896030791B0190BD009ACD03 /* UIWindow+Launch.h */, - 8960307A1B0190BD009ACD03 /* UIWindow+Launch.m */, - ); - path = UIWindow; - sourceTree = ""; - }; - 8960308E1B019148009ACD03 /* CoreExtend */ = { - isa = PBXGroup; - children = ( - 8960308F1B019148009ACD03 /* CoreConst.h */, - ); - path = CoreExtend; - sourceTree = ""; - }; /* End PBXGroup section */ /* Begin PBXNativeTarget section */ @@ -608,7 +275,6 @@ isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( - 89335FB01AEE00CC00BC444B /* Info.plist in Resources */, 89335F6E1AEDFEE800BC444B /* Main.storyboard in Resources */, 89335F731AEDFEE800BC444B /* LaunchScreen.xib in Resources */, 896030911B0191E2009ACD03 /* 1.gif in Resources */, @@ -630,43 +296,13 @@ isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - 896030871B0190BD009ACD03 /* UIImage+Cut.m in Sources */, - 8960307D1B0190BD009ACD03 /* NSArray+Extend.m in Sources */, - 89335FB81AEE00CC00BC444B /* NSLayoutConstraint+MASDebugAdditions.m in Sources */, - 8960307C1B0190BD009ACD03 /* CALayer+Transition.m in Sources */, 89335FBD1AEE022C00BC444B /* NewFeatureScrollView.m in Sources */, - 896030811B0190BD009ACD03 /* NSString+Password.m in Sources */, - 89335FB61AEE00CC00BC444B /* MASViewConstraint.m in Sources */, - 896030861B0190BD009ACD03 /* UIImage+Color.m in Sources */, - 896030821B0190BD009ACD03 /* UIBarButtonItem+Extend.m in Sources */, + 892BCE871C0C5145008F84A3 /* UIView+NFLayout.m in Sources */, 89335F8E1AEDFF5300BC444B /* CoreNewFeatureVC.m in Sources */, 89335F681AEDFEE800BC444B /* AppDelegate.m in Sources */, 89335F911AEDFF8000BC444B /* NewFeatureModel.m in Sources */, - 89335FB91AEE00CC00BC444B /* View+MASAdditions.m in Sources */, - 896030831B0190BD009ACD03 /* UIColor+Extend.m in Sources */, - 896030801B0190BD009ACD03 /* NSString+Extend.m in Sources */, - 89335FB11AEE00CC00BC444B /* MASCompositeConstraint.m in Sources */, - 89335FB51AEE00CC00BC444B /* MASViewAttribute.m in Sources */, - 89335FBA1AEE00CC00BC444B /* UIView+Masony.m in Sources */, - 896030851B0190BD009ACD03 /* UIFont+Extend.m in Sources */, - 8960308C1B0190BD009ACD03 /* UIView+Extend.m in Sources */, - 8960308B1B0190BD009ACD03 /* UITableViewCell+Extend.m in Sources */, - 89335FB31AEE00CC00BC444B /* MASConstraintMaker.m in Sources */, - 89335FB71AEE00CC00BC444B /* NSArray+MASAdditions.m in Sources */, - 8960307E1B0190BD009ACD03 /* NSDate+Extend.m in Sources */, - 8960307F1B0190BD009ACD03 /* NSObject+Extend.m in Sources */, - 896030881B0190BD009ACD03 /* UIImage+Extend.m in Sources */, 89335FC01AEE057C00BC444B /* NewFeatureImageV.m in Sources */, - 89335FD01AEE0B8B00BC444B /* NSString+File.m in Sources */, - 89335FB21AEE00CC00BC444B /* MASConstraint.m in Sources */, - 89335FD11AEE0B8B00BC444B /* CoreArchive.m in Sources */, - 896030891B0190BD009ACD03 /* UIImage+FixOrientation.m in Sources */, - 89335FB41AEE00CC00BC444B /* MASLayoutConstraint.m in Sources */, - 896030841B0190BD009ACD03 /* UIDevice+Extend.m in Sources */, 89335F651AEDFEE800BC444B /* main.m in Sources */, - 8960308A1B0190BD009ACD03 /* UIImage+Water.m in Sources */, - 8960307B1B0190BD009ACD03 /* CALayer+Anim.m in Sources */, - 8960308D1B0190BD009ACD03 /* UIWindow+Launch.m in Sources */, 89335FC51AEE0AD200BC444B /* UIApplication+Extend.m in Sources */, ); runOnlyForDeploymentPostprocessing = 0; diff --git a/CoreNewFeatureVC.xcodeproj/project.xcworkspace/xcuserdata/Charlin.xcuserdatad/UserInterfaceState.xcuserstate b/CoreNewFeatureVC.xcodeproj/project.xcworkspace/xcuserdata/Charlin.xcuserdatad/UserInterfaceState.xcuserstate index af91fba59a8f8e61041ddf05b9fb9cdeff819515..3c0c4caedf8d6d08e16a6a837814c05f113c4bb6 100644 GIT binary patch literal 13534 zcmd6N34Bx4w)Y;Aju~5MnzU)t%tPn7h(JduL%~jz0*#?Plt|i?Bn4`%?1(4@6S^7Qf;OUIG=esv&1eg{9sL76h#o=@qi4}`XeZi* z_M$h?o9Hd{F*=AoL7$>;(Rb*3^aJ`49Y#N)BUpsRI0nb!WIPU!$0=Bk4cLfHxBwU8 zB3z71@M(A=J{?cSO}H7i;8r{rx8ZrX9nZ%L@Iu^yo%l?A7G8=yxCi&+RhZ!*J`b

Pl43NnG5MkbQe z$s|%o=8$$WpSVajSwh^Thb$vLvYf0SL*!g?9$8B+A?wIh?W^~cgcI?eewbMlzc`0O}-~Tkt5_7`IY=e35}t#G?|X0 z<7o<2Q3Ewn6E#x{wbOiBKuhT)I+;$Pm9&aZr!(kG+DMz|T)L2U&`!FPdT0;rr_1RI zIz-Q-7t>4VrSxig4ZVeKq{DQC-be4J572+m2kArfVY;2}pwH2r^i{f>?xSzh{qzHR zkbXhGrvDO&L}F2lC{`3FiWen_5=9b`RHP7%6RAWRkyfM=nMK*6Vo`~xR5VF6Su{m7 zO;j(M-eTz3S#@DuPEmPTMNV;TK}}9oRc%>L zU14oyVRe3GQE_EyWZ@K)g|fFH6-q^Fq(NyY9cfVp%0xOQW-%<5#j$vnz!I5+NttXL z(jx;hA`>zr3$h{`vLic_GX-mB^O=+Nuq)V=ED!z_0DDzF&b749>+TKsD?0=3<*oqN z_qa8o55N4}>L;$W2%eSV(Q;I$@5$UZgk7U1eWi9mv^V-#g3Q>mKD57>atY_V)U{ z9xgs2~%@Nvw)ZXAP{8wX%Y}s14L_9%@JP(E?rp7lD-K!_&ukK&s0*hS+#E&Z+2F?DlXI z^78Up{2Lo6p$K9J35s*KxX^FeW?dr{&>JBXFUzAtv^>Gc{iaO2}==X80)h9QA zFl#su*9{7g+w(edqBD^TEov7uzSq^mwFy5te@jCX9KZ;4ceXV&%?>&Gv5a?zm{d6x z=lzc}dGa=Z-EOaMAg`sq)y=JN@B?Oon$2_#c>4pnJ!ARug!oeb|G?Lhv3xBH@s;LO zob$gguZFs?q@p-l9^y#rR0RGPI66Tyqt9$G#7X8~kWI*fd38TowNKKTIv?nB$XAC3 zS07iR`W{y|2g($BI%-#fzv_zSh=n-Haw>L2WCNDtad(ECoj_w+-P*O%KD?in++bk0bPi=|7Ld&1Y%cD zAEX~AbhWzu?nNGs4;Ze_0OxCT^>%X$r@6bhN{^@B@9*az=$cNL)C7S626sizGE_b; zX>?pC`E>qZSy4r{uAsaue<*I=U_nuNLAEY`NC+agqODFvazoRs{(uV>u5m-|;q3)x zH=$e6ZK!iWL(}oL$lkZ1yHC0Id(geG_xo89D~7$7umYZkGnSc4R<{l2XY0y}3Wi$w zANfNON{^uJr=+w4JqeVaW@W4#C{=_hbzax|l(gPM?*pw5*<>~aXjO)3y{8_(eZgR1K?yJBg7U(l zd4olT73E`@JA}UC34Vq?M_-^XSv9L+wXAM4`X~At2>zQ*Wz&FQ{r^jKc?@6ind|D0 zLqaJnEQ3uHlz^rb7L1rSdyQ$c_n{!DhlHW`(8lxa0D*^Z4T~EX=PMY9B1f zFDuK|m5!3baaejPa#)7tKu*bKvpGQS41wIN_hs(8LcCR!hYr62h>a=|R^jwh$ro#J z2GG*6Ce{qJT6kKpPxXZ(8x{=0QNjKS%1g^bdo2x_MOZVj89PqNTsF=Df_ZE%YXgGw z!h1b;+m4nHb7ch;yk?e^^2{lqq78WqT#Cz4(l9P#3x;t8TgW;VLNeO`F`y~ngZ$m8 zP@L$31oONNPa5IPFhXYvu186?;YwVEt8opk#dUZpp2p5(F1CnuvM$E4#jN`_JRNEe zJD!Cb@N7H>>DdyfJMx&DoyC?i5B%6&j#H5$G(${ucXIXq zxo*g8IY0QEabr7XdWCrER3r(_l{|_N04D_5>u94uq|Vjj_6#@`17=n65Hb3*ro!qV!piqfK@oa*w*;+*2rlA@gQ z{JN@~x~i&*io&XzlIrS$)|KU@&eGymA->NO9_87P*bB$x!W_!pgcspX+{JpCm-TJJ zi*Ywz!j`ei**Uy*=EK27*G1tP3fyK>e-H2Hg)?p9y7>~5FOp80GP{rWve1=sQdhG( z;Nf29>s;K616!~c_u*yOhyBdQ2G|e_vbAhogx}@(Y@Xj0cqJZSeimT;oA4k$2M@93 zYz12xs+~?+A&NZ+C0-wtcus}m&j(hyI+r$aeGr!*A#y5ge?D4Rqt)f<=L}QgQ0Tu- zq%#quJB6-CwzC#reA0F~F>+tpL zT(*iaex^d0+Bo6QIM|3cpG0R1z7=m}=dso7e4sP=8-Y%EH?QM6;iT@uf9K0VNbX#- zmBh6ug1})yMdFy#CjK?#?XK83xk8hcZZtUxip#>7M|?t}L@I+yE-X@^%!9C8835O@ zs2>0Uz&a$1&TH!L?BuvEu4}I{DIqyUeF}tRWZZZrV&V~1D!>)-EU~qrsSfgB7+LN0 zczthZGcpr&S$YGsH@VN|VAaKS9#^*?-g#$bm|_+-uaqiyv;*`vmrt)bA?IzW=ZRH$ zJzcMxEmqs9iqr6dBUbzI+B7>SAvZ4{c$mxk5ZGCWmnI&ksmezR$`XKFVNrz1kwQDX zmy||jCL<+$V|fL*jWLqx5@a?q!G6ki05lq!W^e-lbc9jRJ*Q7<_IbSlh5`Rn0>ong z{Id}7&RT#J8lmc6guG}Opq%|^6`-4cgIw=Mz%@4lqPYca1w`{6Kr^30&!au)ZS)af zn1|5k7z1Xh#2TChSY-~NloN41o(Z0L4j_~Z0gvRsy8H3jfInV|x8g_et`3Si*E&&@dVzEcfj8#z;Rr{E@gj%znAdtL;vS?-aOC;uKGU=0#;y<<G*W?I$1i~Oy@+4pbv*#>p`skl9Opwqk_*Fp|+z5UJb$S(Y zfOourS-a2x(!t*V(lsPDO#@te0-)Q)!mK^`^^Q@wR{DIdflYW1-itb6ozSb|OTk6I zg#*I?Hd3}uct3yxn*eyKMN+wKQ3GtGj6hS?sI-Mo8`DGO~H8nZ#e@RYpVSZ^&WpRFGPGL!5acyx? zaa~1zkyDX9mVmJQ@da9X-OKv9`Ys4_?!|5n!a^nt7vRP}SXH6s35MXxX0O+?$mOf| zhl?H|P=@

  • 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 diff --git a/CoreNewFeatureVC/AppDelegate.m b/CoreNewFeatureVC/AppDelegate.m index e484d90..5a16546 100644 --- a/CoreNewFeatureVC/AppDelegate.m +++ b/CoreNewFeatureVC/AppDelegate.m @@ -9,7 +9,7 @@ #import "AppDelegate.h" #import "CoreNewFeatureVC.h" -#import "CALayer+Transition.h" + @interface AppDelegate () @@ -60,7 +60,6 @@ -(void)enter{ UIViewController *vc = [[UIViewController alloc] init]; vc.view.backgroundColor = [UIColor brownColor]; self.window.rootViewController = vc; - [self.window.layer transitionWithAnimType:TransitionAnimTypeRamdom subType:TransitionSubtypesFromRamdom curve:TransitionCurveRamdom duration:2.0f]; } diff --git a/CoreNewFeatureVC/CoreNewFeatureVC/Category/UIView+NFLayout.h b/CoreNewFeatureVC/CoreNewFeatureVC/Category/UIView+NFLayout.h new file mode 100644 index 0000000..849c3da --- /dev/null +++ b/CoreNewFeatureVC/CoreNewFeatureVC/Category/UIView+NFLayout.h @@ -0,0 +1,15 @@ +// +// UIView+CoreListLayout.h +// CoreList +// +// Created by 冯成林 on 15/11/28. +// Copyright © 2015年 muxi. All rights reserved. +// + +#import + +@interface UIView (NFLayout) + +-(void)autoLayoutFillSuperView; + +@end diff --git a/CoreNewFeatureVC/CoreNewFeatureVC/Category/UIView+NFLayout.m b/CoreNewFeatureVC/CoreNewFeatureVC/Category/UIView+NFLayout.m new file mode 100644 index 0000000..2877c48 --- /dev/null +++ b/CoreNewFeatureVC/CoreNewFeatureVC/Category/UIView+NFLayout.m @@ -0,0 +1,26 @@ +// +// UIView+CoreListLayout.m +// CoreList +// +// Created by 冯成林 on 15/11/28. +// Copyright © 2015年 muxi. All rights reserved. +// + +#import "UIView+NFLayout.h" + +@implementation UIView (NFLayout) + +-(void)autoLayoutFillSuperView { + + if(self.superview == nil) {return;} + + self.translatesAutoresizingMaskIntoConstraints = NO; + + NSDictionary *views = @{@"v":self}; + + NSArray *v_ver = [NSLayoutConstraint constraintsWithVisualFormat:@"V:|-0-[v]-0-|" options:0 metrics:nil views:views]; + NSArray *v_hor = [NSLayoutConstraint constraintsWithVisualFormat:@"H:|-0-[v]-0-|" options:0 metrics:nil views:views]; + [self.superview addConstraints:v_ver];[self.superview addConstraints:v_hor]; +} + +@end diff --git a/CoreNewFeatureVC/CoreNewFeatureVC/CoreNewFeatureVC.m b/CoreNewFeatureVC/CoreNewFeatureVC/CoreNewFeatureVC.m index acb0825..3fedd60 100644 --- a/CoreNewFeatureVC/CoreNewFeatureVC/CoreNewFeatureVC.m +++ b/CoreNewFeatureVC/CoreNewFeatureVC/CoreNewFeatureVC.m @@ -7,11 +7,10 @@ // #import "CoreNewFeatureVC.h" -#import "UIView+Masony.h" #import "NewFeatureScrollView.h" #import "NewFeatureImageV.h" #import "UIApplication+Extend.h" -#import "CoreArchive.h" +#import "UIView+NFLayout.h" NSString *const NewFeatureVersionKey = @"NewFeatureVersionKey"; @@ -68,7 +67,7 @@ -(void)saveVersion{ NSString *versionValueStringForSystemNow=[UIApplication sharedApplication].version; //保存版本号 - [CoreArchive setStr:versionValueStringForSystemNow key:NewFeatureVersionKey]; + [[NSUserDefaults standardUserDefaults] setObject:versionValueStringForSystemNow forKey:NewFeatureVersionKey]; } @@ -87,7 +86,7 @@ -(void)vcPrepare{ [self.view addSubview:scrollView]; //添加约束 - [scrollView masViewAddConstraintMakeEqualSuperViewWithInsets:UIEdgeInsetsZero]; + [scrollView autoLayoutFillSuperView]; //添加图片 [self imageViewsPrepare]; @@ -150,7 +149,7 @@ +(BOOL)canShowNewFeature{ NSString *versionValueStringForSystemNow=[UIApplication sharedApplication].version; //读取本地版本号 - NSString *versionLocal = [CoreArchive strForKey:NewFeatureVersionKey]; + NSString *versionLocal = [[NSUserDefaults standardUserDefaults] objectForKey:NewFeatureVersionKey]; if(versionLocal!=nil && [versionValueStringForSystemNow isEqualToString:versionLocal]){//说明有本地版本记录,且和当前系统版本一致 @@ -159,7 +158,7 @@ +(BOOL)canShowNewFeature{ }else{//无本地版本记录或本地版本记录与当前系统版本不一致 //保存 - [CoreArchive setStr:versionValueStringForSystemNow key:NewFeatureVersionKey]; + [[NSUserDefaults standardUserDefaults] setObject:versionValueStringForSystemNow forKey:NewFeatureVersionKey]; return YES; } diff --git a/CoreNewFeatureVC/FrameWorks/CoreArchive/Category/NSString+File.h b/CoreNewFeatureVC/FrameWorks/CoreArchive/Category/NSString+File.h deleted file mode 100644 index a78fb23..0000000 --- a/CoreNewFeatureVC/FrameWorks/CoreArchive/Category/NSString+File.h +++ /dev/null @@ -1,42 +0,0 @@ -// -// NSString+File.h -// CoreCategory -// -// Created by 成林 on 15/4/6. -// Copyright (c) 2015年 沐汐. All rights reserved. -// - -#import - - - -@interface NSString (File) - - -/* - * document根文件夹 - */ -+(NSString *)documentFolder; - - -/* - * caches根文件夹 - */ -+(NSString *)cachesFolder; - - - - -/** - * 生成子文件夹 - * - * 如果子文件夹不存在,则直接创建;如果已经存在,则直接返回 - * - * @param subFolder 子文件夹名 - * - * @return 文件夹路径 - */ --(NSString *)createSubFolder:(NSString *)subFolder; - - -@end diff --git a/CoreNewFeatureVC/FrameWorks/CoreArchive/Category/NSString+File.m b/CoreNewFeatureVC/FrameWorks/CoreArchive/Category/NSString+File.m deleted file mode 100644 index 211c5b3..0000000 --- a/CoreNewFeatureVC/FrameWorks/CoreArchive/Category/NSString+File.m +++ /dev/null @@ -1,62 +0,0 @@ -// -// NSString+File.m -// CoreCategory -// -// Created by 成林 on 15/4/6. -// Copyright (c) 2015年 沐汐. All rights reserved. -// - -#import "NSString+File.h" - -@implementation NSString (File) - -/* - * document根文件夹 - */ -+(NSString *)documentFolder{ - - return [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) lastObject]; -} - - - -/* - * caches根文件夹 - */ -+(NSString *)cachesFolder{ - - return [NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSUserDomainMask, YES) lastObject]; -} - - - - - -/** - * 生成子文件夹 - * - * 如果子文件夹不存在,则直接创建;如果已经存在,则直接返回 - * - * @param subFolder 子文件夹名 - * - * @return 文件夹路径 - */ --(NSString *)createSubFolder:(NSString *)subFolder{ - - NSString *subFolderPath=[NSString stringWithFormat:@"%@/%@",self,subFolder]; - - BOOL isDir = NO; - - NSFileManager *fileManager = [NSFileManager defaultManager]; - - BOOL existed = [fileManager fileExistsAtPath:subFolderPath isDirectory:&isDir]; - - if ( !(isDir == YES && existed == YES) ) - { - [fileManager createDirectoryAtPath:subFolderPath withIntermediateDirectories:YES attributes:nil error:nil]; - } - - return subFolderPath; -} - -@end diff --git a/CoreNewFeatureVC/FrameWorks/CoreArchive/CoreArchive.h b/CoreNewFeatureVC/FrameWorks/CoreArchive/CoreArchive.h deleted file mode 100755 index 9a5fabe..0000000 --- a/CoreNewFeatureVC/FrameWorks/CoreArchive/CoreArchive.h +++ /dev/null @@ -1,93 +0,0 @@ -// -// ToolArc.h -// 私人通讯录 -// -// Created by muxi on 14-9-3. -// Copyright (c) 2014年 muxi. All rights reserved. -// - -#import -#import -#import "NSString+File.h" - - -@interface CoreArchive : NSObject - -#pragma mark - 偏好类信息存储 - -/** - * 保存普通字符串 - */ -+(void)setStr:(NSString *)str key:(NSString *)key; - -/** - * 读取 - */ -+(NSString *)strForKey:(NSString *)key; - -/** - * 删除 - */ -+(void)removeStrForKey:(NSString *)key; - - -/** - * 保存int - */ -+(void)setInt:(NSInteger)i key:(NSString *)key; - -/** - * 读取int - */ -+(NSInteger)intForKey:(NSString *)key; - - - -/** - * 保存float - */ -+(void)setFloat:(CGFloat)floatValue key:(NSString *)key; - -/** - * 读取float - */ -+(CGFloat)floatForKey:(NSString *)key; - - - -/** - * 保存bool - */ -+(void)setBool:(BOOL)boolValue key:(NSString *)key; - -/** - * 读取bool - */ -+(BOOL)boolForKey:(NSString *)key; - - -#pragma mark - 文件归档 - -/** - * 归档 - */ -+(BOOL)archiveRootObject:(id)obj toFile:(NSString *)path; -/** - * 删除 - */ -+(BOOL)removeRootObjectWithFile:(NSString *)path; - -/** - * 解档 - */ -+(id)unarchiveObjectWithFile:(NSString *)path; - - - - - - - - - -@end diff --git a/CoreNewFeatureVC/FrameWorks/CoreArchive/CoreArchive.m b/CoreNewFeatureVC/FrameWorks/CoreArchive/CoreArchive.m deleted file mode 100755 index aa7ee74..0000000 --- a/CoreNewFeatureVC/FrameWorks/CoreArchive/CoreArchive.m +++ /dev/null @@ -1,144 +0,0 @@ -// -// ToolArc.m -// 私人通讯录 -// -// Created by muxi on 14-9-3. -// Copyright (c) 2014年 muxi. All rights reserved. -// - -#import "CoreArchive.h" - -@implementation CoreArchive - -#pragma mark - 偏好类信息存储 -//保存普通对象 -+(void)setStr:(NSString *)str key:(NSString *)key{ - - //获取preference - NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults]; - - //保存 - [defaults setObject:str forKey:key]; - - //立即同步 - [defaults synchronize]; - -} - -//读取 -+(NSString *)strForKey:(NSString *)key{ - - //获取preference - NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults]; - - //读取 - NSString *str=(NSString *)[defaults objectForKey:key]; - - return str; - -} - -//删除 -+(void)removeStrForKey:(NSString *)key{ - - [self setStr:nil key:key]; - -} - -//保存int -+(void)setInt:(NSInteger)i key:(NSString *)key{ - //获取preference - NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults]; - - //保存 - [defaults setInteger:i forKey:key]; - - //立即同步 - [defaults synchronize]; - -} - -//读取 -+(NSInteger)intForKey:(NSString *)key{ - //获取preference - NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults]; - - //读取 - NSInteger i=[defaults integerForKey:key]; - - return i; -} - -//保存float -+(void)setFloat:(CGFloat)floatValue key:(NSString *)key{ - - //获取preference - NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults]; - - //保存 - [defaults setFloat:floatValue forKey:key]; - - //立即同步 - [defaults synchronize]; - -} -//读取 -+(CGFloat)floatForKey:(NSString *)key{ - //获取preference - NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults]; - - //读取 - CGFloat floatValue=[defaults floatForKey:key]; - - return floatValue; -} - - -//保存bool -+(void)setBool:(BOOL)boolValue key:(NSString *)key{ - //获取preference - NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults]; - - //保存 - [defaults setBool:boolValue forKey:key]; - - //立即同步 - [defaults synchronize]; - -} -//读取 -+(BOOL)boolForKey:(NSString *)key{ - //获取preference - NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults]; - - //读取 - BOOL boolValue=[defaults boolForKey:key]; - - return boolValue; -} - - - - -#pragma mark - 文件归档 -//归档 -+(BOOL)archiveRootObject:(id)obj toFile:(NSString *)path{ - return [NSKeyedArchiver archiveRootObject:obj toFile:path]; -} -//删除 -+(BOOL)removeRootObjectWithFile:(NSString *)path{ - return [self archiveRootObject:nil toFile:path]; -} -//解档 -+(id)unarchiveObjectWithFile:(NSString *)path{ - return [NSKeyedUnarchiver unarchiveObjectWithFile:path]; -} - - - - - - - - -@end diff --git a/CoreNewFeatureVC/FrameWorks/CoreCategory/CALayer/CALayer+Anim.h b/CoreNewFeatureVC/FrameWorks/CoreCategory/CALayer/CALayer+Anim.h deleted file mode 100644 index 7056699..0000000 --- a/CoreNewFeatureVC/FrameWorks/CoreCategory/CALayer/CALayer+Anim.h +++ /dev/null @@ -1,42 +0,0 @@ -// -// CALayer+Anim.h -// Carpenter -// -// Created by 冯成林 on 15/4/23. -// Copyright (c) 2015年 冯成林. All rights reserved. -// - -#import - - -/* - * 反转方向 - */ -typedef enum { - - //X - AnimReverDirectionX=0, - - //Y - AnimReverDirectionY, - - //Z - AnimReverDirectionZ, - -}AnimReverDirection; - - - - - -@interface CALayer (Anim) - - - --(CAAnimation *)anim_shake:(NSArray *)rotations duration:(NSTimeInterval)duration repeatCount:(NSUInteger)repeatCount; - - --(CAAnimation *)anim_revers:(AnimReverDirection)direction duration:(NSTimeInterval)duration isReverse:(BOOL)isReverse repeatCount:(NSUInteger)repeatCount timingFuncName:(NSString *)timingFuncName; - - -@end diff --git a/CoreNewFeatureVC/FrameWorks/CoreCategory/CALayer/CALayer+Anim.m b/CoreNewFeatureVC/FrameWorks/CoreCategory/CALayer/CALayer+Anim.m deleted file mode 100644 index 946bd42..0000000 --- a/CoreNewFeatureVC/FrameWorks/CoreCategory/CALayer/CALayer+Anim.m +++ /dev/null @@ -1,82 +0,0 @@ -// -// CALayer+Anim.m -// Carpenter -// -// Created by 冯成林 on 15/4/23. -// Copyright (c) 2015年 冯成林. All rights reserved. -// - -#import "CALayer+Anim.h" - -@implementation CALayer (Anim) - - --(CAAnimation *)anim_shake:(NSArray *)rotations duration:(NSTimeInterval)duration repeatCount:(NSUInteger)repeatCount{ - - //创建关键帧动画 - CAKeyframeAnimation *kfa = [CAKeyframeAnimation animationWithKeyPath:@"transform.rotation.z"]; - - //指定值 - kfa.values = rotations; - - //时长 - kfa.duration = duration; - - //重复次数 - kfa.repeatCount=repeatCount; - - //完成删除 - kfa.removedOnCompletion = YES; - - //添加 - [self addAnimation:kfa forKey:@"rotation"]; - - return kfa; -} - - - --(CAAnimation *)anim_revers:(AnimReverDirection)direction duration:(NSTimeInterval)duration isReverse:(BOOL)isReverse repeatCount:(NSUInteger)repeatCount timingFuncName:(NSString *)timingFuncName{ - - NSString *key = @"reversAnim"; - - if([self animationForKey:key]!=nil){ - [self removeAnimationForKey:key]; - } - - NSString *directionStr = nil; - - if(AnimReverDirectionX == direction)directionStr=@"x"; - if(AnimReverDirectionY == direction)directionStr=@"y"; - if(AnimReverDirectionZ == direction)directionStr=@"z"; - - //创建普通动画 - CABasicAnimation *reversAnim = [CABasicAnimation animationWithKeyPath:[NSString stringWithFormat:@"transform.rotation.%@",directionStr]]; - - //起点值 - reversAnim.fromValue=@(0); - - //终点值 - reversAnim.toValue = @(M_PI_2); - - //时长 - reversAnim.duration = duration; - - //自动反转 - reversAnim.autoreverses = isReverse; - - //完成删除 - reversAnim.removedOnCompletion = YES; - - //重复次数 - reversAnim.repeatCount = repeatCount; - - //添加 - [self addAnimation:reversAnim forKey:key]; - - return reversAnim; -} - - - -@end diff --git a/CoreNewFeatureVC/FrameWorks/CoreCategory/CALayer/CALayer+Transition.h b/CoreNewFeatureVC/FrameWorks/CoreCategory/CALayer/CALayer+Transition.h deleted file mode 100644 index 55d7983..0000000 --- a/CoreNewFeatureVC/FrameWorks/CoreCategory/CALayer/CALayer+Transition.h +++ /dev/null @@ -1,110 +0,0 @@ -// -// CALayer+Transition.h -// Carpenter -// -// Created by 冯成林 on 15/4/23. -// Copyright (c) 2015年 冯成林. All rights reserved. -// - -#import - -@interface CALayer (Transition) - -/* - * 动画类型 - */ -typedef enum{ - - //水波 - TransitionAnimTypeRippleEffect=0, - - //吸走 - TransitionAnimTypeSuckEffect, - - //翻开书本 - TransitionAnimTypePageCurl, - - //正反翻转 - TransitionAnimTypeOglFlip, - - //正方体 - TransitionAnimTypeCube, - - //push推开 - TransitionAnimTypeReveal, - - //合上书本 - TransitionAnimTypePageUnCurl, - - //随机 - TransitionAnimTypeRamdom, - -}TransitionAnimType; - - - - -/* - * 动画方向 - */ -typedef enum{ - - //从上 - TransitionSubtypesFromTop=0, - - //从左 - TransitionSubtypesFromLeft, - - //从下 - TransitionSubtypesFromBotoom, - - //从右 - TransitionSubtypesFromRight, - - //随机 - TransitionSubtypesFromRamdom, - -}TransitionSubType; - - -/* - * 动画曲线 - */ -typedef enum { - - //默认 - TransitionCurveDefault, - - //缓进 - TransitionCurveEaseIn, - - //缓出 - TransitionCurveEaseOut, - - //缓进缓出 - TransitionCurveEaseInEaseOut, - - //线性 - TransitionCurveLinear, - - //随机 - TransitionCurveRamdom, - -}TransitionCurve; - - - - -/** - * 转场动画 - * - * @param animType 转场动画类型 - * @param subtype 转动动画方向 - * @param curve 转动动画曲线 - * @param duration 转动动画时长 - * - * @return 转场动画实例 - */ --(CATransition *)transitionWithAnimType:(TransitionAnimType)animType subType:(TransitionSubType)subType curve:(TransitionCurve)curve duration:(CGFloat)duration; - -@end diff --git a/CoreNewFeatureVC/FrameWorks/CoreCategory/CALayer/CALayer+Transition.m b/CoreNewFeatureVC/FrameWorks/CoreCategory/CALayer/CALayer+Transition.m deleted file mode 100644 index 1c22aa2..0000000 --- a/CoreNewFeatureVC/FrameWorks/CoreCategory/CALayer/CALayer+Transition.m +++ /dev/null @@ -1,111 +0,0 @@ -// -// CALayer+Transition.m -// Carpenter -// -// Created by 冯成林 on 15/4/23. -// Copyright (c) 2015年 冯成林. All rights reserved. -// - -#import "CALayer+Transition.h" - -@implementation CALayer (Transition) - - -/** - * 转场动画 - * - * @param animType 转场动画类型 - * @param subtype 转动动画方向 - * @param curve 转动动画曲线 - * @param duration 转动动画时长 - * - * @return 转场动画实例 - */ --(CATransition *)transitionWithAnimType:(TransitionAnimType)animType subType:(TransitionSubType)subType curve:(TransitionCurve)curve duration:(CGFloat)duration{ - - NSString *key = @"transition"; - - if([self animationForKey:key]!=nil){ - [self removeAnimationForKey:key]; - } - - - CATransition *transition=[CATransition animation]; - - //动画时长 - transition.duration=duration; - - //动画类型 - transition.type=[self animaTypeWithTransitionType:animType]; - - //动画方向 - transition.subtype=[self animaSubtype:subType]; - - //缓动函数 - transition.timingFunction=[CAMediaTimingFunction functionWithName:[self curve:curve]]; - - //完成动画删除 - transition.removedOnCompletion = YES; - - [self addAnimation:transition forKey:key]; - - return transition; -} - - - -/* - * 返回动画曲线 - */ --(NSString *)curve:(TransitionCurve)curve{ - - //曲线数组 - NSArray *funcNames=@[kCAMediaTimingFunctionDefault,kCAMediaTimingFunctionEaseIn,kCAMediaTimingFunctionEaseInEaseOut,kCAMediaTimingFunctionEaseOut,kCAMediaTimingFunctionLinear]; - - return [self objFromArray:funcNames index:curve isRamdom:(TransitionCurveRamdom == curve)]; -} - - - -/* - * 返回动画方向 - */ --(NSString *)animaSubtype:(TransitionSubType)subType{ - - //设置转场动画的方向 - NSArray *subtypes=@[kCATransitionFromTop,kCATransitionFromLeft,kCATransitionFromBottom,kCATransitionFromRight]; - - return [self objFromArray:subtypes index:subType isRamdom:(TransitionSubtypesFromRamdom == subType)]; -} - - - - -/* - * 返回动画类型 - */ --(NSString *)animaTypeWithTransitionType:(TransitionAnimType)type{ - - //设置转场动画的类型 - NSArray *animArray=@[@"rippleEffect",@"suckEffect",@"pageCurl",@"oglFlip",@"cube",@"reveal",@"pageUnCurl"]; - - return [self objFromArray:animArray index:type isRamdom:(TransitionAnimTypeRamdom == type)]; -} - - - -/* - * 统一从数据返回对象 - */ --(id)objFromArray:(NSArray *)array index:(NSUInteger)index isRamdom:(BOOL)isRamdom{ - - NSUInteger count = array.count; - - NSUInteger i = isRamdom?arc4random_uniform((u_int32_t)count) : index; - - return array[i]; -} - - - -@end diff --git a/CoreNewFeatureVC/FrameWorks/CoreCategory/NSArray/NSArray+Extend.h b/CoreNewFeatureVC/FrameWorks/CoreCategory/NSArray/NSArray+Extend.h deleted file mode 100755 index a7b59cf..0000000 --- a/CoreNewFeatureVC/FrameWorks/CoreCategory/NSArray/NSArray+Extend.h +++ /dev/null @@ -1,36 +0,0 @@ -// -// NSArray+Extend.h -// Wifi -// -// Created by muxi on 14/11/27. -// Copyright (c) 2014年 muxi. All rights reserved. -// - -#import - -@interface NSArray (Extend) - - -/** - * 数组转字符串 - */ --(NSString *)string; - - -/** - * 数组比较 - */ --(BOOL)compareIgnoreObjectOrderWithArray:(NSArray *)array; - - -/** - * 数组计算交集 - */ --(NSArray *)arrayForIntersectionWithOtherArray:(NSArray *)otherArray; - -/** - * 数据计算差集 - */ --(NSArray *)arrayForMinusWithOtherArray:(NSArray *)otherArray; - -@end diff --git a/CoreNewFeatureVC/FrameWorks/CoreCategory/NSArray/NSArray+Extend.m b/CoreNewFeatureVC/FrameWorks/CoreCategory/NSArray/NSArray+Extend.m deleted file mode 100755 index 298aa30..0000000 --- a/CoreNewFeatureVC/FrameWorks/CoreCategory/NSArray/NSArray+Extend.m +++ /dev/null @@ -1,95 +0,0 @@ -// -// NSArray+Extend.m -// Wifi -// -// Created by muxi on 14/11/27. -// Copyright (c) 2014年 muxi. All rights reserved. -// - -#import "NSArray+Extend.h" - -@implementation NSArray (Extend) - - - -#pragma mark 数组转字符串 --(NSString *)string{ - - if(self==nil || self.count==0) return @""; - - NSMutableString *str=[NSMutableString string]; - [self enumerateObjectsUsingBlock:^(id obj, NSUInteger idx, BOOL *stop) { - [str appendFormat:@"%@,",obj]; - }]; - - //删除最后一个',' - NSString *strForRight = [str substringWithRange:NSMakeRange(0, str.length-1)]; - - return strForRight; -} - - - - - -#pragma mark 数组比较 --(BOOL)compareIgnoreObjectOrderWithArray:(NSArray *)array{ - - NSSet *set1=[NSSet setWithArray:self]; - - NSSet *set2=[NSSet setWithArray:array]; - - return [set1 isEqualToSet:set2]; -} - - -/** - * 数组计算交集 - */ --(NSArray *)arrayForIntersectionWithOtherArray:(NSArray *)otherArray{ - - NSMutableArray *intersectionArray=[NSMutableArray array]; - - if(self.count==0) return nil; - if(otherArray==nil) return nil; - - //遍历 - for (id obj in self) { - - if(![otherArray containsObject:obj]) continue; - - //添加 - [intersectionArray addObject:obj]; - } - - return intersectionArray; -} - - - -/** - * 数据计算差集 - */ --(NSArray *)arrayForMinusWithOtherArray:(NSArray *)otherArray{ - - if(self==nil) return nil; - - if(otherArray==nil) return self; - - NSMutableArray *minusArray=[NSMutableArray arrayWithArray:self]; - - //遍历 - for (id obj in otherArray) { - - if(![self containsObject:obj]) continue; - - //添加 - [minusArray removeObject:obj]; - - } - - return minusArray; -} - - -@end diff --git a/CoreNewFeatureVC/FrameWorks/CoreCategory/NSDate/NSDate+Extend.h b/CoreNewFeatureVC/FrameWorks/CoreCategory/NSDate/NSDate+Extend.h deleted file mode 100644 index a242be8..0000000 --- a/CoreNewFeatureVC/FrameWorks/CoreCategory/NSDate/NSDate+Extend.h +++ /dev/null @@ -1,68 +0,0 @@ -// -// NSDate+Extend.h -// CoreCategory -// -// Created by 成林 on 15/4/6. -// Copyright (c) 2015年 沐汐. All rights reserved. -// - -#import - -@interface NSDate (Extend) - -/* - * 时间戳 - */ -@property (nonatomic,copy,readonly) NSString *timestamp; - - - -/* - * 时间成分 - */ -@property (nonatomic,strong,readonly) NSDateComponents *components; - - - - -/* - * 是否是今年 - */ -@property (nonatomic,assign,readonly) BOOL isThisYear; - - - - -/* - * 是否是今天 - */ -@property (nonatomic,assign,readonly) BOOL isToday; - - - - -/* - * 是否是昨天 - */ -@property (nonatomic,assign,readonly) BOOL isYesToday; - - - - -/** - * 两个时间比较 - * - * @param unit 成分单元 - * @param fromDate 起点时间 - * @param toDate 终点时间 - * - * @return 时间成分对象 - */ -+(NSDateComponents *)dateComponents:(NSCalendarUnit)unit fromDate:(NSDate *)fromDate toDate:(NSDate *)toDate; - - - - - - -@end diff --git a/CoreNewFeatureVC/FrameWorks/CoreCategory/NSDate/NSDate+Extend.m b/CoreNewFeatureVC/FrameWorks/CoreCategory/NSDate/NSDate+Extend.m deleted file mode 100644 index edf0fa3..0000000 --- a/CoreNewFeatureVC/FrameWorks/CoreCategory/NSDate/NSDate+Extend.m +++ /dev/null @@ -1,208 +0,0 @@ -// -// NSDate+Extend.m -// CoreCategory -// -// Created by 成林 on 15/4/6. -// Copyright (c) 2015年 沐汐. All rights reserved. -// - -#import "NSDate+Extend.h" - -@interface NSDate () - - -/* - * 清空时分秒,保留年月日 - */ -@property (nonatomic,strong,readonly) NSDate *ymdDate; - - -@end - - - - -@implementation NSDate (Extend) - - - - - -/* - * 时间戳 - */ --(NSString *)timestamp{ - - NSTimeInterval timeInterval = [self timeIntervalSince1970]; - - NSString *timeString = [NSString stringWithFormat:@"%.0f",timeInterval]; - - return [timeString copy]; -} - - - - - -/* - * 时间成分 - */ --(NSDateComponents *)components{ - - //创建日历 - NSCalendar *calendar=[NSCalendar currentCalendar]; - - //定义成分 - NSCalendarUnit unit=NSCalendarUnitYear | NSCalendarUnitMonth | NSCalendarUnitDay | NSCalendarUnitHour | NSCalendarUnitMinute | NSCalendarUnitSecond; - - return [calendar components:unit fromDate:self]; -} - - - - - -/* - * 是否是今年 - */ --(BOOL)isThisYear{ - - //取出给定时间的components - NSDateComponents *dateComponents=self.components; - - //取出当前时间的components - NSDateComponents *nowComponents=[NSDate date].components; - - //直接对比年成分是否一致即可 - BOOL res = dateComponents.year==nowComponents.year; - - return res; -} - - - - - -/* - * 是否是今天 - */ --(BOOL)isToday{ - - //差值为0天 - return [self calWithValue:0]; -} - - - - - -/* - * 是否是昨天 - */ --(BOOL)isYesToday{ - - //差值为1天 - return [self calWithValue:1]; -} - - --(BOOL)calWithValue:(NSInteger)value{ - - //得到给定时间的处理后的时间的components - NSDateComponents *dateComponents=self.ymdDate.components; - - //得到当前时间的处理后的时间的components - NSDateComponents *nowComponents=[NSDate date].ymdDate.components; - - //比较 - BOOL res=dateComponents.year==nowComponents.year && dateComponents.month==nowComponents.month && (dateComponents.day + value)==nowComponents.day; - - return res; -} - - - -/* - * 清空时分秒,保留年月日 - */ --(NSDate *)ymdDate{ - - //定义fmt - NSDateFormatter *fmt=[[NSDateFormatter alloc] init]; - - //设置格式:去除时分秒 - fmt.dateFormat=@"yyyy-MM-dd"; - - //得到字符串格式的时间 - NSString *dateString=[fmt stringFromDate:self]; - - //再转为date - NSDate *date=[fmt dateFromString:dateString]; - - return date; -} - - - - - - - - - - - - -/** - * 两个时间比较 - * - * @param unit 成分单元 - * @param fromDate 起点时间 - * @param toDate 终点时间 - * - * @return 时间成分对象 - */ -+(NSDateComponents *)dateComponents:(NSCalendarUnit)unit fromDate:(NSDate *)fromDate toDate:(NSDate *)toDate{ - - //创建日历 - NSCalendar *calendar=[NSCalendar currentCalendar]; - - //直接计算 - NSDateComponents *components = [calendar components:unit fromDate:fromDate toDate:toDate options:0]; - - return components; -} - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -@end diff --git a/CoreNewFeatureVC/FrameWorks/CoreCategory/NSObject/NSObject+Extend.h b/CoreNewFeatureVC/FrameWorks/CoreCategory/NSObject/NSObject+Extend.h deleted file mode 100755 index c101e5d..0000000 --- a/CoreNewFeatureVC/FrameWorks/CoreCategory/NSObject/NSObject+Extend.h +++ /dev/null @@ -1,26 +0,0 @@ -// -// NSObject+Address.h -// 网易彩票2014MJ版 -// -// Created by muxi on 14-9-23. -// Copyright (c) 2014年 沐汐. All rights reserved. -// - -#import - -@interface NSObject (Extend) - - -/** - * 返回任意对象的字符串式的内存地址 - */ --(NSString *)address; - - -/** - * 调用方法 - */ --(void)callSelectorWithSelString:(NSString *)selString paramObj:(id)paramObj; - - -@end diff --git a/CoreNewFeatureVC/FrameWorks/CoreCategory/NSObject/NSObject+Extend.m b/CoreNewFeatureVC/FrameWorks/CoreCategory/NSObject/NSObject+Extend.m deleted file mode 100755 index 90d5a7b..0000000 --- a/CoreNewFeatureVC/FrameWorks/CoreCategory/NSObject/NSObject+Extend.m +++ /dev/null @@ -1,41 +0,0 @@ -// -// NSObject+Address.m -// 网易彩票2014MJ版 -// -// Created by muxi on 14-9-23. -// Copyright (c) 2014年 沐汐. All rights reserved. -// - -#import "NSObject+Extend.h" -#import - - -@implementation NSObject (Extend) - - -#pragma mark 返回任意对象的字符串式的内存地址 --(NSString *)address{ - return [NSString stringWithFormat:@"%p",self]; -} - - - - -#pragma mark 调用方法 --(void)callSelectorWithSelString:(NSString *)selString paramObj:(id)paramObj{ - - //转换为sel - SEL sel=NSSelectorFromString(selString); - - if(![self respondsToSelector:sel]) return; - - //调用 -// objc_msgSend(self, sel); - -} - - - - - -@end diff --git a/CoreNewFeatureVC/FrameWorks/CoreCategory/NSString/NSString+Extend.h b/CoreNewFeatureVC/FrameWorks/CoreCategory/NSString/NSString+Extend.h deleted file mode 100644 index 1941b9f..0000000 --- a/CoreNewFeatureVC/FrameWorks/CoreCategory/NSString/NSString+Extend.h +++ /dev/null @@ -1,26 +0,0 @@ -// -// NSString+Extend.h -// CoreCategory -// -// Created by 成林 on 15/4/6. -// Copyright (c) 2015年 沐汐. All rights reserved. -// - -#import - -@interface NSString (Extend) - - -/* - * 时间戳对应的NSDate - */ -@property (nonatomic,strong,readonly) NSDate *date; - - - - - - - - -@end diff --git a/CoreNewFeatureVC/FrameWorks/CoreCategory/NSString/NSString+Extend.m b/CoreNewFeatureVC/FrameWorks/CoreCategory/NSString/NSString+Extend.m deleted file mode 100644 index c0915b9..0000000 --- a/CoreNewFeatureVC/FrameWorks/CoreCategory/NSString/NSString+Extend.m +++ /dev/null @@ -1,28 +0,0 @@ -// -// NSString+Extend.m -// CoreCategory -// -// Created by 成林 on 15/4/6. -// Copyright (c) 2015年 沐汐. All rights reserved. -// - -#import "NSString+Extend.h" - -@implementation NSString (Extend) - - -/* - * 时间戳对应的NSDate - */ --(NSDate *)date{ - - NSTimeInterval timeInterval=self.floatValue; - - return [NSDate dateWithTimeIntervalSince1970:timeInterval]; -} - - - - - -@end diff --git a/CoreNewFeatureVC/FrameWorks/CoreCategory/NSString/NSString+Password.h b/CoreNewFeatureVC/FrameWorks/CoreCategory/NSString/NSString+Password.h deleted file mode 100755 index b72ce57..0000000 --- a/CoreNewFeatureVC/FrameWorks/CoreCategory/NSString/NSString+Password.h +++ /dev/null @@ -1,35 +0,0 @@ -// -// NSString+Password.h -// 03.数据加密 -// -// Created by 刘凡 on 13-12-10. -// Copyright (c) 2013年 itcast. All rights reserved. -// - -#import - -@interface NSString (Password) - - - - - -/** - * 32位MD5加密 - */ -@property (nonatomic,copy,readonly) NSString *md5; - - - - - -/** - * SHA1加密 - */ -@property (nonatomic,copy,readonly) NSString *sha1; - - - - - -@end diff --git a/CoreNewFeatureVC/FrameWorks/CoreCategory/NSString/NSString+Password.m b/CoreNewFeatureVC/FrameWorks/CoreCategory/NSString/NSString+Password.m deleted file mode 100755 index 5a805b7..0000000 --- a/CoreNewFeatureVC/FrameWorks/CoreCategory/NSString/NSString+Password.m +++ /dev/null @@ -1,62 +0,0 @@ -// -// NSString+Password.m -// 03.数据加密 -// -// Created by 刘凡 on 13-12-10. -// Copyright (c) 2013年 itcast. All rights reserved. -// - -#import "NSString+Password.h" -#import - -@implementation NSString (Password) - - -/** - * 32位MD5加密 - */ --(NSString *)md5{ - - const char *cStr = [self UTF8String]; - unsigned char digest[CC_MD5_DIGEST_LENGTH]; - - CC_MD5(cStr, (CC_LONG)strlen(cStr), digest); - - NSMutableString *result = [NSMutableString stringWithCapacity:CC_MD5_DIGEST_LENGTH * 2]; - - for(int i = 0; i < CC_MD5_DIGEST_LENGTH; i++) { - [result appendFormat:@"%02x", digest[i]]; - } - - return [result copy]; -} - - - - -/** - * SHA1加密 - */ --(NSString *)sha1{ - - const char *cStr = [self UTF8String]; - NSData *data = [NSData dataWithBytes:cStr length:self.length]; - uint8_t digest[CC_SHA1_DIGEST_LENGTH]; - - CC_SHA1(data.bytes, (CC_LONG)data.length, digest); - - NSMutableString *result = [NSMutableString stringWithCapacity:CC_SHA1_DIGEST_LENGTH * 2]; - - for(int i = 0; i < CC_SHA1_DIGEST_LENGTH; i++) { - [result appendFormat:@"%02x", digest[i]]; - } - - return [result copy]; -} - - - - - - -@end diff --git a/CoreNewFeatureVC/FrameWorks/CoreCategory/UIBarButtonItem/UIBarButtonItem+Extend.h b/CoreNewFeatureVC/FrameWorks/CoreCategory/UIBarButtonItem/UIBarButtonItem+Extend.h deleted file mode 100644 index 1cd659c..0000000 --- a/CoreNewFeatureVC/FrameWorks/CoreCategory/UIBarButtonItem/UIBarButtonItem+Extend.h +++ /dev/null @@ -1,20 +0,0 @@ -// -// UIBarButtonItem+Extend.h -// Carpenter -// -// Created by 冯成林 on 15/5/11. -// Copyright (c) 2015年 冯成林. All rights reserved. -// - -#import -#import "UIColor+Extend.h" - - -@interface UIBarButtonItem (Extend) - - - -+(instancetype)barButtonItemWithSize:(CGSize)size target:(id)target selector:(SEL)selector ImgName:(NSString *)imgName hlImageColor:(UIColor *)hlImageColor; - - -@end diff --git a/CoreNewFeatureVC/FrameWorks/CoreCategory/UIBarButtonItem/UIBarButtonItem+Extend.m b/CoreNewFeatureVC/FrameWorks/CoreCategory/UIBarButtonItem/UIBarButtonItem+Extend.m deleted file mode 100644 index 33521d7..0000000 --- a/CoreNewFeatureVC/FrameWorks/CoreCategory/UIBarButtonItem/UIBarButtonItem+Extend.m +++ /dev/null @@ -1,38 +0,0 @@ -// -// UIBarButtonItem+Extend.m -// Carpenter -// -// Created by 冯成林 on 15/5/11. -// Copyright (c) 2015年 冯成林. All rights reserved. -// - -#import "UIBarButtonItem+Extend.h" -#import "UIImage+Color.h" - -@implementation UIBarButtonItem (Extend) - - -+(instancetype)barButtonItemWithSize:(CGSize)size target:(id)target selector:(SEL)selector ImgName:(NSString *)imgName hlImageColor:(UIColor *)hlImageColor{ - - //创建按钮 - UIButton *btn = [[UIButton alloc] init]; - - //绑定事件 - [btn addTarget:target action:selector forControlEvents:UIControlEventTouchUpInside]; - - btn.frame= (CGRect){CGPointZero,size}; - - //image - UIImage *image = [UIImage imageNamed:imgName]; - UIImage *hlImage = [image imageWithGradientTintColor:hlImageColor]; - - [btn setImage:image forState:UIControlStateNormal]; - [btn setImage:hlImage forState:UIControlStateHighlighted]; - - //创建 - UIBarButtonItem *item = [[UIBarButtonItem alloc] initWithCustomView:btn]; - - return item; -} - -@end diff --git a/CoreNewFeatureVC/FrameWorks/CoreCategory/UIColor/UIColor+Extend.h b/CoreNewFeatureVC/FrameWorks/CoreCategory/UIColor/UIColor+Extend.h deleted file mode 100755 index b8d5e6c..0000000 --- a/CoreNewFeatureVC/FrameWorks/CoreCategory/UIColor/UIColor+Extend.h +++ /dev/null @@ -1,42 +0,0 @@ -// -// UIColor+Extend.h -// Wifi -// -// Created by muxi on 14/11/19. -// Copyright (c) 2014年 muxi. All rights reserved. -// - -#import -#define rgb(r,g,b) [UIColor colorWithRed:r/255.0f green:g/255.0f blue:b/255.0f alpha:1.0f] -#define rgba(r,g,b,a) [UIColor colorWithRed:r/255.0f green:g/255.0f blue:b/255.0f alpha:a] -#define hexColor(colorV) [UIColor colorWithHexColorString:@#colorV] -#define hexColorAlpha(colorV,a) [UIColor colorWithHexColorString:@#colorV alpha:a]; - - - -@interface UIColor (Extend) - - - - -/** - * 十六进制颜色 - */ -+ (UIColor *)colorWithHexColorString:(NSString *)hexColorString; - - - - - - -/** - * 十六进制颜色:含alpha - */ -+ (UIColor *)colorWithHexColorString:(NSString *)hexColorString alpha:(float)alpha; - - - - - - -@end diff --git a/CoreNewFeatureVC/FrameWorks/CoreCategory/UIColor/UIColor+Extend.m b/CoreNewFeatureVC/FrameWorks/CoreCategory/UIColor/UIColor+Extend.m deleted file mode 100755 index 03fada8..0000000 --- a/CoreNewFeatureVC/FrameWorks/CoreCategory/UIColor/UIColor+Extend.m +++ /dev/null @@ -1,51 +0,0 @@ -// -// UIColor+Extend.m -// Wifi -// -// Created by muxi on 14/11/19. -// Copyright (c) 2014年 muxi. All rights reserved. -// - -#import "UIColor+Extend.h" - -@implementation UIColor (Extend) - - - -#pragma mark 十六进制颜色 -+ (UIColor *)colorWithHexColorString:(NSString *)hexColorString{ - return [self colorWithHexColorString:hexColorString alpha:1.0f]; -} - - - - -#pragma mark 十六进制颜色 -+ (UIColor *)colorWithHexColorString:(NSString *)hexColorString alpha:(float)alpha{ - - unsigned int red, green, blue; - - NSRange range; - - range.length =2; - - range.location =0; - - [[NSScanner scannerWithString:[hexColorString substringWithRange:range]]scanHexInt:&red]; - - range.location =2; - - [[NSScanner scannerWithString:[hexColorString substringWithRange:range]]scanHexInt:&green]; - - range.location =4; - - [[NSScanner scannerWithString:[hexColorString substringWithRange:range]]scanHexInt:&blue]; - - UIColor *color = [UIColor colorWithRed:(float)(red/255.0f)green:(float)(green/255.0f)blue:(float)(blue/255.0f)alpha:alpha]; - - return color; -} - - - -@end diff --git a/CoreNewFeatureVC/FrameWorks/CoreCategory/UIDevice/UIDevice+Extend.h b/CoreNewFeatureVC/FrameWorks/CoreCategory/UIDevice/UIDevice+Extend.h deleted file mode 100644 index d8f627c..0000000 --- a/CoreNewFeatureVC/FrameWorks/CoreCategory/UIDevice/UIDevice+Extend.h +++ /dev/null @@ -1,29 +0,0 @@ -// -// UIDevice+Extend.h -// CoreCategory -// -// Created by 成林 on 15/5/6. -// Copyright (c) 2015年 沐汐. All rights reserved. -// - -#import - -//ios系统版本 -#define ios8x [[[UIDevice currentDevice] systemVersion] floatValue] >=8.0f -#define ios7x ([[[UIDevice currentDevice] systemVersion] floatValue] >= 7.0f) && ([[[UIDevice currentDevice] systemVersion] floatValue] < 8.0f) -#define ios6x [[[UIDevice currentDevice] systemVersion] floatValue] < 7.0f -#define iosNot6x [[[UIDevice currentDevice] systemVersion] floatValue] >= 7.0f - - -#define iphone4x_3_5 ([UIScreen mainScreen].bounds.size.height==480.0f) - -#define iphone5x_4_0 ([UIScreen mainScreen].bounds.size.height==568.0f) - -#define iphone6_4_7 ([UIScreen mainScreen].bounds.size.height==667.0f) - -#define iphone6Plus_5_5 ([UIScreen mainScreen].bounds.size.height==736.0f || [UIScreen mainScreen].bounds.size.height==414.0f) - -@interface UIDevice (Extend) - - -@end diff --git a/CoreNewFeatureVC/FrameWorks/CoreCategory/UIDevice/UIDevice+Extend.m b/CoreNewFeatureVC/FrameWorks/CoreCategory/UIDevice/UIDevice+Extend.m deleted file mode 100644 index 75a048b..0000000 --- a/CoreNewFeatureVC/FrameWorks/CoreCategory/UIDevice/UIDevice+Extend.m +++ /dev/null @@ -1,13 +0,0 @@ -// -// UIDevice+Extend.m -// CoreCategory -// -// Created by 成林 on 15/5/6. -// Copyright (c) 2015年 沐汐. All rights reserved. -// - -#import "UIDevice+Extend.h" - -@implementation UIDevice (Extend) - -@end diff --git a/CoreNewFeatureVC/FrameWorks/CoreCategory/UIFont/UIFont+Extend.h b/CoreNewFeatureVC/FrameWorks/CoreCategory/UIFont/UIFont+Extend.h deleted file mode 100755 index c510edb..0000000 --- a/CoreNewFeatureVC/FrameWorks/CoreCategory/UIFont/UIFont+Extend.h +++ /dev/null @@ -1,49 +0,0 @@ -// -// UIFont+Extend.h -// Wifi -// -// Created by muxi on 14/12/1. -// Copyright (c) 2014年 muxi. All rights reserved. -// 字体扩展 -// -// 注:本类的主要目的是为了引入常用的web字体 -// -// -// -#import - -@interface UIFont (Extend) - -/** - * 打印并显示所有字体 - */ -+(void)showAllFonts; - - -/** - * 宋体(字体缺失) - */ -+(UIFont *)songTypefaceFontOfSize:(CGFloat)size; - - - - - -/** - * 微软雅黑:正常字体 - */ -+(UIFont *)microsoftYaHeiFontOfSize:(CGFloat)size; - - -/** - * 微软雅黑:加粗字体(字体缺失) - */ -+(UIFont *)boldMicrosoftYaHeiFontOfSize:(CGFloat)size; - - -/** - * DroidSansFallback - */ -+(UIFont *)customFontNamedDroidSansFallbackWithFontOfSize:(CGFloat)size; - -@end diff --git a/CoreNewFeatureVC/FrameWorks/CoreCategory/UIFont/UIFont+Extend.m b/CoreNewFeatureVC/FrameWorks/CoreCategory/UIFont/UIFont+Extend.m deleted file mode 100755 index a1ca615..0000000 --- a/CoreNewFeatureVC/FrameWorks/CoreCategory/UIFont/UIFont+Extend.m +++ /dev/null @@ -1,78 +0,0 @@ -// -// UIFont+Extend.m -// Wifi -// -// Created by muxi on 14/12/1. -// Copyright (c) 2014年 muxi. All rights reserved. -// - -#import "UIFont+Extend.h" - -@implementation UIFont (Extend) - - -#pragma mark 打印并显示所有字体 -+(void)showAllFonts{ - NSArray *familyNames = [UIFont familyNames]; - for( NSString *familyName in familyNames ){ - printf( "Family: %s \n", [familyName UTF8String] ); - NSArray *fontNames = [UIFont fontNamesForFamilyName:familyName]; - for( NSString *fontName in fontNames ){ - printf( "\tFont: %s \n", [fontName UTF8String] ); - } - } -} - - - - -#pragma mark 宋体 -+(UIFont *)songTypefaceFontOfSize:(CGFloat)size{ - - return [UIFont fontWithName:@"经典宋体简" size:size]; - -} - - - - - -#pragma mark 微软雅黑 -+(UIFont *)microsoftYaHeiFontOfSize:(CGFloat)size{ - return [UIFont fontWithName:@"MicrosoftYaHei" size:size]; -} - - - - -#pragma mark 微软雅黑:加粗字体 -+(UIFont *)boldMicrosoftYaHeiFontOfSize:(CGFloat)size{ - return [UIFont fontWithName:@"MicrosoftYaHei-Bold" size:size]; -} - - - - -#pragma mark DroidSansFallback -+(UIFont *)customFontNamedDroidSansFallbackWithFontOfSize:(CGFloat)size{ - return [UIFont fontWithName:@"DroidSansFallback" size:size]; -} - - - - - - - - - - - - - - - - - - -@end diff --git a/CoreNewFeatureVC/FrameWorks/CoreCategory/UIImage/UIImage+Color.h b/CoreNewFeatureVC/FrameWorks/CoreCategory/UIImage/UIImage+Color.h deleted file mode 100755 index c997493..0000000 --- a/CoreNewFeatureVC/FrameWorks/CoreCategory/UIImage/UIImage+Color.h +++ /dev/null @@ -1,25 +0,0 @@ -// -// UIImage+Color.h -// 网易彩票2014MJ版 -// -// Created by 沐汐 on 14-9-13. -// Copyright (c) 2014年 沐汐. All rights reserved. -// - -#import -#import "UIColor+Extend.h" - -@interface UIImage (Color) - -//给我一种颜色,一个尺寸,我给你返回一个UIImage:不透明 -+(UIImage *)imageFromContextWithColor:(UIColor *)color; -+(UIImage *)imageFromContextWithColor:(UIColor *)color size:(CGSize)size; - - - - -- (UIImage *) imageWithTintColor:(UIColor *)tintColor; -- (UIImage *) imageWithGradientTintColor:(UIColor *)tintColor; - - -@end diff --git a/CoreNewFeatureVC/FrameWorks/CoreCategory/UIImage/UIImage+Color.m b/CoreNewFeatureVC/FrameWorks/CoreCategory/UIImage/UIImage+Color.m deleted file mode 100755 index 53609b2..0000000 --- a/CoreNewFeatureVC/FrameWorks/CoreCategory/UIImage/UIImage+Color.m +++ /dev/null @@ -1,78 +0,0 @@ -// -// UIImage+Color.m -// 网易彩票2014MJ版 -// -// Created by 沐汐 on 14-9-13. -// Copyright (c) 2014年 沐汐. All rights reserved. -// - -#import "UIImage+Color.h" - -@implementation UIImage (Color) - - -//给我一种颜色,一个尺寸,我给你返回一个UIImage -+(UIImage *)imageFromContextWithColor:(UIColor *)color size:(CGSize)size{ - - CGRect rect=(CGRect){{0.0f,0.0f},size}; - - //开启一个图形上下文 - UIGraphicsBeginImageContextWithOptions(rect.size, NO, 0.0f); - - //获取图形上下文 - CGContextRef context=UIGraphicsGetCurrentContext(); - - CGContextSetFillColorWithColor(context, color.CGColor); - - CGContextFillRect(context, rect); - - //获取图像 - UIImage *image=UIGraphicsGetImageFromCurrentImageContext(); - - //关闭上下文 - UIGraphicsEndImageContext(); - - return image; -} - -+(UIImage *)imageFromContextWithColor:(UIColor *)color{ - - CGSize size=CGSizeMake(1.0f, 1.0f); - - return [self imageFromContextWithColor:color size:size]; -} - - -- (UIImage *) imageWithTintColor:(UIColor *)tintColor -{ - return [self imageWithTintColor:tintColor blendMode:kCGBlendModeDestinationIn]; -} - -- (UIImage *) imageWithGradientTintColor:(UIColor *)tintColor -{ - return [self imageWithTintColor:tintColor blendMode:kCGBlendModeOverlay]; -} - -- (UIImage *) imageWithTintColor:(UIColor *)tintColor blendMode:(CGBlendMode)blendMode -{ - //We want to keep alpha, set opaque to NO; Use 0.0f for scale to use the scale factor of the device’s main screen. - UIGraphicsBeginImageContextWithOptions(self.size, NO, 0.0f); - [tintColor setFill]; - CGRect bounds = CGRectMake(0, 0, self.size.width, self.size.height); - UIRectFill(bounds); - - //Draw the tinted image in context - [self drawInRect:bounds blendMode:blendMode alpha:1.0f]; - - if (blendMode != kCGBlendModeDestinationIn) { - [self drawInRect:bounds blendMode:kCGBlendModeDestinationIn alpha:1.0f]; - } - - UIImage *tintedImage = UIGraphicsGetImageFromCurrentImageContext(); - UIGraphicsEndImageContext(); - - return tintedImage; -} - - -@end diff --git a/CoreNewFeatureVC/FrameWorks/CoreCategory/UIImage/UIImage+Cut.h b/CoreNewFeatureVC/FrameWorks/CoreCategory/UIImage/UIImage+Cut.h deleted file mode 100755 index 43c9a1e..0000000 --- a/CoreNewFeatureVC/FrameWorks/CoreCategory/UIImage/UIImage+Cut.h +++ /dev/null @@ -1,55 +0,0 @@ -// -// UIImage+Cut.h -// mohu -// -// Created by 沐汐 on 14-10-6. -// Copyright (c) 2014年 沐汐. All rights reserved. -// 手机屏幕截图,图片指定区域截图: -// -// - -#import - -@interface UIImage (Cut) - - -/* - * 圆形图片 - */ -@property (nonatomic,strong,readonly) UIImage *roundImage; - - - - - - -/** - * 从给定UIView中截图:UIView转UIImage - */ -+(UIImage *)cutFromView:(UIView *)view; - - - - - -/** - * 直接截屏 - */ -+(UIImage *)cutScreen; - - - - - -/** - * 从给定UIImage和指定Frame截图: - */ --(UIImage *)cutWithFrame:(CGRect)frame; - - - - - - - -@end diff --git a/CoreNewFeatureVC/FrameWorks/CoreCategory/UIImage/UIImage+Cut.m b/CoreNewFeatureVC/FrameWorks/CoreCategory/UIImage/UIImage+Cut.m deleted file mode 100755 index 80334ba..0000000 --- a/CoreNewFeatureVC/FrameWorks/CoreCategory/UIImage/UIImage+Cut.m +++ /dev/null @@ -1,123 +0,0 @@ -// -// UIImage+Cut.m -// mohu -// -// Created by 沐汐 on 14-10-6. -// Copyright (c) 2014年 沐汐. All rights reserved. -// - -#import "UIImage+Cut.h" - -@implementation UIImage (Cut) - - - -/** - * 图片剪切为圆形 - * - * @param originalImage 原始图片 - * - * @return 剪切后的圆形图片 - */ --(UIImage *)roundImage{ - - //获取size - CGSize size = [self sizeFromImage:self]; - - CGRect rect = (CGRect){CGPointZero,size}; - - //新建一个图片图形上下文 - UIGraphicsBeginImageContextWithOptions(size, NO, 0.0f); - - //获取上下文 - CGContextRef ctx = UIGraphicsGetCurrentContext(); - - //绘制圆形路径 - CGContextAddEllipseInRect(ctx, rect); - - //剪裁上下文 - CGContextClip(ctx); - - //绘制图片 - [self drawInRect:rect]; - - //取出图片 - UIImage *roundImage = UIGraphicsGetImageFromCurrentImageContext(); - - //结束上下文 - UIGraphicsEndImageContext(); - - return roundImage; -} - - - --(CGSize)sizeFromImage:(UIImage *)image{ - - CGSize size = image.size; - - CGFloat wh =MIN(size.width, size.height); - - return CGSizeMake(wh, wh); -} - - - - - - -/* - * 直接截屏 - */ -+(UIImage *)cutScreen{ - return [self cutFromView:[UIApplication sharedApplication].keyWindow]; -} - - - - - -+(UIImage *)cutFromView:(UIView *)view{ - - //开启图形上下文 - UIGraphicsBeginImageContextWithOptions(view.frame.size, NO, 0.0f); - - //获取上下文 - CGContextRef context = UIGraphicsGetCurrentContext(); - - //在新建的图形上下文中渲染view的layer - [view.layer renderInContext:context]; - - [[UIColor clearColor] setFill]; - - //获取图片 - UIImage *image = UIGraphicsGetImageFromCurrentImageContext(); - - //关闭图形上下文 - UIGraphicsEndImageContext(); - - return image; - -} - - - --(UIImage *)cutWithFrame:(CGRect)frame{ - - //创建CGImage - CGImageRef cgimage = CGImageCreateWithImageInRect(self.CGImage, frame); - - //创建image - UIImage *newImage=[UIImage imageWithCGImage:cgimage]; - - //释放CGImage - CGImageRelease(cgimage); - - return newImage; - - -} - - - -@end diff --git a/CoreNewFeatureVC/FrameWorks/CoreCategory/UIImage/UIImage+Extend.h b/CoreNewFeatureVC/FrameWorks/CoreCategory/UIImage/UIImage+Extend.h deleted file mode 100755 index 903fc2f..0000000 --- a/CoreNewFeatureVC/FrameWorks/CoreCategory/UIImage/UIImage+Extend.h +++ /dev/null @@ -1,50 +0,0 @@ -// -// UIImage+Extend.h -// CDHN -// -// Created by muxi on 14-10-14. -// Copyright (c) 2014年 muxi. All rights reserved. -// - -#import - -@interface UIImage (Extend) - - - - - -/** - * 拉伸图片:自定义比例 - */ -+(UIImage *)resizeWithImageName:(NSString *)name leftCap:(CGFloat)leftCap topCap:(CGFloat)topCap; - - - - - -/** - * 拉伸图片 - */ -+(UIImage *)resizeWithImageName:(NSString *)name; - - -/** - * 获取启动图片 - */ -+(UIImage *)launchImage; - - - - -/** - * 保存相册 - * - * @param completeBlock 成功回调 - * @param completeBlock 出错回调 - */ --(void)savedPhotosAlbum:(void(^)())completeBlock failBlock:(void(^)())failBlock; - - - -@end diff --git a/CoreNewFeatureVC/FrameWorks/CoreCategory/UIImage/UIImage+Extend.m b/CoreNewFeatureVC/FrameWorks/CoreCategory/UIImage/UIImage+Extend.m deleted file mode 100755 index f837591..0000000 --- a/CoreNewFeatureVC/FrameWorks/CoreCategory/UIImage/UIImage+Extend.m +++ /dev/null @@ -1,142 +0,0 @@ -// -// UIImage+Extend.m -// CDHN -// -// Created by muxi on 14-10-14. -// Copyright (c) 2014年 muxi. All rights reserved. -// - -#import "UIImage+Extend.h" -#import "CoreConst.h" -#import - -static const void *CompleteBlockKey = &CompleteBlockKey; -static const void *FailBlockKey = &FailBlockKey; - -@interface UIImage () - -@property (nonatomic,copy) void(^CompleteBlock)(); - -@property (nonatomic,copy) void(^FailBlock)(); - -@end - - -@implementation UIImage (Extend) - - -/** - * 获取启动图片 - */ -+(UIImage *)launchImage{ - - NSString *imageName=@"LaunchImage-700"; - - if(iphone5x_4_0) imageName=@"LaunchImage-700-568h"; - - return [UIImage imageNamed:imageName]; -} - - -/** - * 根据不同的iphone屏幕大小自动加载对应的图片名 - * 加载规则: - * iPhone4: 默认图片名,无后缀 - * iPhone5系列: _ip5 - * iPhone6: _ip6 - * iPhone6 Plus: _ip6p,注意屏幕旋转显示不同的图片不是这个方法能决定的,需要使用UIImage的sizeClass特性决定 - */ -+(UIImage *)deviceImageNamed:(NSString *)name{ - - NSString *imageName=[name copy]; - - //iphone5 - if(iphone5x_4_0) imageName=[NSString stringWithFormat:@"%@%@",imageName,@"_ip5"]; - - //iphone6 - if(iphone6_4_7) imageName=[NSString stringWithFormat:@"%@%@",imageName,@"_ip6"]; - - //iphone6 Plus - if(iphone6Plus_5_5) imageName=[NSString stringWithFormat:@"%@%@",imageName,@"_ip6p"]; - - UIImage *originalImage=[UIImage imageNamed:name]; - - UIImage *deviceImage=[UIImage imageNamed:imageName]; - - if(deviceImage==nil) deviceImage=originalImage; - - return deviceImage; -} - - - - -/** - * 拉伸图片 - */ -#pragma mark 拉伸图片:自定义比例 -+(UIImage *)resizeWithImageName:(NSString *)name leftCap:(CGFloat)leftCap topCap:(CGFloat)topCap{ - UIImage *image = [self imageNamed:name]; - return [image stretchableImageWithLeftCapWidth:image.size.width * leftCap topCapHeight:image.size.height * topCap]; -} - - - - -#pragma mark 拉伸图片 -+(UIImage *)resizeWithImageName:(NSString *)name{ - - return [self resizeWithImageName:name leftCap:.5f topCap:.5f]; - -} - - - - -/** - * 保存相册 - * - * @param completeBlock 成功回调 - * @param completeBlock 出错回调 - */ --(void)savedPhotosAlbum:(void(^)())completeBlock failBlock:(void(^)())failBlock{ - - UIImageWriteToSavedPhotosAlbum(self, self, @selector(image:didFinishSavingWithError:contextInfo:),NULL); - - self.CompleteBlock = completeBlock; - self.FailBlock = failBlock; -} - - - - -- (void)image:(UIImage *)image didFinishSavingWithError:(NSError *)error contextInfo:(void *)contextInfo{ - - if(error == nil){ - if(self.CompleteBlock != nil) self.CompleteBlock(); - }else{ - if(self.FailBlock !=nil) self.FailBlock(); - } - -} - - - -/* - * 模拟成员变量 - */ --(void (^)())FailBlock{ - return objc_getAssociatedObject(self, FailBlockKey); -} --(void)setFailBlock:(void (^)())FailBlock{ - objc_setAssociatedObject(self, FailBlockKey, FailBlock, OBJC_ASSOCIATION_RETAIN_NONATOMIC); -} --(void (^)())CompleteBlock{ - return objc_getAssociatedObject(self, CompleteBlockKey); -} - --(void)setCompleteBlock:(void (^)())CompleteBlock{ - objc_setAssociatedObject(self, CompleteBlockKey, CompleteBlock, OBJC_ASSOCIATION_RETAIN_NONATOMIC); -} - -@end diff --git a/CoreNewFeatureVC/FrameWorks/CoreCategory/UIImage/UIImage+FixOrientation.h b/CoreNewFeatureVC/FrameWorks/CoreCategory/UIImage/UIImage+FixOrientation.h deleted file mode 100755 index 800deac..0000000 --- a/CoreNewFeatureVC/FrameWorks/CoreCategory/UIImage/UIImage+FixOrientation.h +++ /dev/null @@ -1,15 +0,0 @@ -// -// UIImage+FixOrientation.h -// image -// -// Created by muxi on 14/11/12. -// Copyright (c) 2014年 muxi. All rights reserved. -// - -#import - -@interface UIImage (FixOrientation) - --(UIImage *)fixOrientation; - -@end diff --git a/CoreNewFeatureVC/FrameWorks/CoreCategory/UIImage/UIImage+FixOrientation.m b/CoreNewFeatureVC/FrameWorks/CoreCategory/UIImage/UIImage+FixOrientation.m deleted file mode 100755 index 156c749..0000000 --- a/CoreNewFeatureVC/FrameWorks/CoreCategory/UIImage/UIImage+FixOrientation.m +++ /dev/null @@ -1,92 +0,0 @@ -// -// UIImage+FixOrientation.m -// image -// -// Created by muxi on 14/11/12. -// Copyright (c) 2014年 muxi. All rights reserved. -// - -#import "UIImage+FixOrientation.h" - -@implementation UIImage (FixOrientation) - - -- (UIImage *)fixOrientation { - - // No-op if the orientation is already correct - if (self.imageOrientation == UIImageOrientationUp) return self; - - // We need to calculate the proper transformation to make the image upright. - // We do it in 2 steps: Rotate if Left/Right/Down, and then flip if Mirrored. - CGAffineTransform transform = CGAffineTransformIdentity; - - switch (self.imageOrientation) { - case UIImageOrientationDown: - case UIImageOrientationDownMirrored: - transform = CGAffineTransformTranslate(transform, self.size.width, self.size.height); - transform = CGAffineTransformRotate(transform, M_PI); - break; - - case UIImageOrientationLeft: - case UIImageOrientationLeftMirrored: - transform = CGAffineTransformTranslate(transform, self.size.width, 0); - transform = CGAffineTransformRotate(transform, M_PI_2); - break; - - case UIImageOrientationRight: - case UIImageOrientationRightMirrored: - transform = CGAffineTransformTranslate(transform, 0, self.size.height); - transform = CGAffineTransformRotate(transform, -M_PI_2); - break; - default: - break; - } - - switch (self.imageOrientation) { - case UIImageOrientationUpMirrored: - case UIImageOrientationDownMirrored: - transform = CGAffineTransformTranslate(transform, self.size.width, 0); - transform = CGAffineTransformScale(transform, -1, 1); - break; - - case UIImageOrientationLeftMirrored: - case UIImageOrientationRightMirrored: - transform = CGAffineTransformTranslate(transform, self.size.height, 0); - transform = CGAffineTransformScale(transform, -1, 1); - break; - default: - break; - } - - // Now we draw the underlying CGImage into a new context, applying the transform - // calculated above. - CGContextRef ctx = CGBitmapContextCreate(NULL, self.size.width, self.size.height, - CGImageGetBitsPerComponent(self.CGImage), 0, - CGImageGetColorSpace(self.CGImage), - CGImageGetBitmapInfo(self.CGImage)); - CGContextConcatCTM(ctx, transform); - switch (self.imageOrientation) { - case UIImageOrientationLeft: - case UIImageOrientationLeftMirrored: - case UIImageOrientationRight: - case UIImageOrientationRightMirrored: - // Grr... - CGContextDrawImage(ctx, CGRectMake(0,0,self.size.height,self.size.width), self.CGImage); - break; - - default: - CGContextDrawImage(ctx, CGRectMake(0,0,self.size.width,self.size.height), self.CGImage); - break; - } - - // And now we just create a new UIImage from the drawing context - CGImageRef cgimg = CGBitmapContextCreateImage(ctx); - UIImage *img = [UIImage imageWithCGImage:cgimg]; - CGContextRelease(ctx); - CGImageRelease(cgimg); - return img; -} - - - -@end diff --git a/CoreNewFeatureVC/FrameWorks/CoreCategory/UIImage/UIImage+Water.h b/CoreNewFeatureVC/FrameWorks/CoreCategory/UIImage/UIImage+Water.h deleted file mode 100644 index a02d323..0000000 --- a/CoreNewFeatureVC/FrameWorks/CoreCategory/UIImage/UIImage+Water.h +++ /dev/null @@ -1,51 +0,0 @@ -// -// UIImage+Water.h -// CoreCategory -// -// Created by 冯成林 on 15/4/21. -// Copyright (c) 2015年 沐汐. All rights reserved. -// 图片加水印 - -#import - - -/* - * 水印方向 - */ -typedef enum { - - //左上 - ImageWaterDirectTopLeft=0, - - //右上 - ImageWaterDirectTopRight, - - //左下 - ImageWaterDirectBottomLeft, - - //右下 - ImageWaterDirectBottomRight, - - //正中 - ImageWaterDirectCenter - -}ImageWaterDirect; - - - - - - -@interface UIImage (Water) - - - - --(UIImage *)waterWithText:(NSString *)text direction:(ImageWaterDirect)direction fontColor:(UIColor *)fontColor fontPoint:(CGFloat)fontPoint marginXY:(CGPoint)marginXY; - - --(UIImage *)waterWithWaterImage:(UIImage *)waterImage direction:(ImageWaterDirect)direction waterSize:(CGSize)waterSize marginXY:(CGPoint)marginXY; - - - -@end diff --git a/CoreNewFeatureVC/FrameWorks/CoreCategory/UIImage/UIImage+Water.m b/CoreNewFeatureVC/FrameWorks/CoreCategory/UIImage/UIImage+Water.m deleted file mode 100644 index 8153aaa..0000000 --- a/CoreNewFeatureVC/FrameWorks/CoreCategory/UIImage/UIImage+Water.m +++ /dev/null @@ -1,112 +0,0 @@ -// -// UIImage+Water.m -// CoreCategory -// -// Created by 冯成林 on 15/4/21. -// Copyright (c) 2015年 沐汐. All rights reserved. -// - -#import "UIImage+Water.h" - -@implementation UIImage (Water) - - - - --(UIImage *)waterWithText:(NSString *)text direction:(ImageWaterDirect)direction fontColor:(UIColor *)fontColor fontPoint:(CGFloat)fontPoint marginXY:(CGPoint)marginXY{ - - CGSize size = self.size; - - CGRect rect = (CGRect){CGPointZero,size}; - - //新建图片图形上下文 - UIGraphicsBeginImageContextWithOptions(size, NO, 0.0f); - - //绘制图片 - [self drawInRect:rect]; - - //绘制文本 - NSDictionary *attr =@{NSFontAttributeName : [UIFont systemFontOfSize:fontPoint],NSForegroundColorAttributeName:fontColor}; - - CGRect strRect = [self calWidth:text attr:attr direction:direction rect:rect marginXY:marginXY]; - - [text drawInRect:strRect withAttributes:attr]; - - //获取图片 - UIImage *newImage = UIGraphicsGetImageFromCurrentImageContext(); - - //结束图片图形上下文 - UIGraphicsEndImageContext(); - - return newImage; -} - - --(CGRect)calWidth:(NSString *)str attr:(NSDictionary *)attr direction:(ImageWaterDirect)direction rect:(CGRect)rect marginXY:(CGPoint)marginXY{ - - CGSize size = [str sizeWithAttributes:attr]; - - CGRect calRect = [self rectWithRect:rect size:size direction:direction marginXY:marginXY]; - - return calRect; -} - - --(CGRect)rectWithRect:(CGRect)rect size:(CGSize)size direction:(ImageWaterDirect)direction marginXY:(CGPoint)marginXY{ - - CGPoint point = CGPointZero; - - //右上 - if(ImageWaterDirectTopRight == direction) point = CGPointMake(rect.size.width - size.width, 0); - - //左下 - if(ImageWaterDirectBottomLeft == direction) point = CGPointMake(0, rect.size.height - size.height); - - //右下 - if(ImageWaterDirectBottomRight == direction) point = CGPointMake(rect.size.width - size.width, rect.size.height - size.height); - - //正中 - if(ImageWaterDirectCenter == direction) point = CGPointMake((rect.size.width - size.width)*.5f, (rect.size.height - size.height)*.5f); - - point.x+=marginXY.x; - point.y+=marginXY.y; - - CGRect calRect = (CGRect){point,size}; - - return calRect; -} - - - - --(UIImage *)waterWithWaterImage:(UIImage *)waterImage direction:(ImageWaterDirect)direction waterSize:(CGSize)waterSize marginXY:(CGPoint)marginXY{ - - CGSize size = self.size; - - CGRect rect = (CGRect){CGPointZero,size}; - - //新建图片图形上下文 - UIGraphicsBeginImageContextWithOptions(size, NO, 0.0f); - - //绘制图片 - [self drawInRect:rect]; - - //计算水印的rect - CGSize waterImageSize = CGSizeEqualToSize(waterSize, CGSizeZero)?waterImage.size:waterSize; - CGRect calRect = [self rectWithRect:rect size:waterImageSize direction:direction marginXY:marginXY]; - - //绘制水印图片 - [waterImage drawInRect:calRect]; - - //获取图片 - UIImage *newImage = UIGraphicsGetImageFromCurrentImageContext(); - - //结束图片图形上下文 - UIGraphicsEndImageContext(); - - return newImage; -} - - - -@end diff --git a/CoreNewFeatureVC/FrameWorks/CoreCategory/UITableViewCell/UITableViewCell+Extend.h b/CoreNewFeatureVC/FrameWorks/CoreCategory/UITableViewCell/UITableViewCell+Extend.h deleted file mode 100644 index 2adaf68..0000000 --- a/CoreNewFeatureVC/FrameWorks/CoreCategory/UITableViewCell/UITableViewCell+Extend.h +++ /dev/null @@ -1,36 +0,0 @@ -// -// UITableViewCell+Extend.h -// Carpenter -// -// Created by 冯成林 on 15/4/29. -// Copyright (c) 2015年 冯成林. All rights reserved. -// - -#import - -@interface UITableViewCell (Extend) - - -/** - * 创建cell - * - * @param tableView 所属tableView - * - * @return cell实例 - */ -+(instancetype)cellWithTableView:(UITableView *)tableView; - - -/** - * cell向下移动,留出空隙 - * - * @param frame 原frame - * @param down 向下移动的距离 - * - * @return 新的frame - */ --(CGRect)cellMove:(CGRect)frame down:(CGFloat)down; - - - -@end diff --git a/CoreNewFeatureVC/FrameWorks/CoreCategory/UITableViewCell/UITableViewCell+Extend.m b/CoreNewFeatureVC/FrameWorks/CoreCategory/UITableViewCell/UITableViewCell+Extend.m deleted file mode 100644 index 7e10ad6..0000000 --- a/CoreNewFeatureVC/FrameWorks/CoreCategory/UITableViewCell/UITableViewCell+Extend.m +++ /dev/null @@ -1,59 +0,0 @@ -// -// UITableViewCell+Extend.m -// Carpenter -// -// Created by 冯成林 on 15/4/29. -// Copyright (c) 2015年 冯成林. All rights reserved. -// - -#import "UITableViewCell+Extend.h" -#import "UIView+Extend.h" - -@implementation UITableViewCell (Extend) - - -/** - * 创建cell - * - * @param tableView 所属tableView - * - * @return cell实例 - */ -+(instancetype)cellWithTableView:(UITableView *)tableView{ - - static NSString *rid = @"cellID"; - - //从缓存池中取出cell - UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:rid]; - - //缓存池中无数据 - if(cell == nil){ - - cell = [self viewFromXIB]; - } - - return cell; -} - - - -/** - * cell向下移动,留出空隙 - * - * @param frame 原frame - * @param down 向下移动的距离 - * - * @return 新的frame - */ --(CGRect)cellMove:(CGRect)frame down:(CGFloat)down{ - - CGFloat topMargin = down; - - frame.origin.y+=topMargin; - - frame.size.height-=topMargin; - - return frame; -} - -@end diff --git a/CoreNewFeatureVC/FrameWorks/CoreCategory/UIView/UIView+Extend.h b/CoreNewFeatureVC/FrameWorks/CoreCategory/UIView/UIView+Extend.h deleted file mode 100755 index f3b887f..0000000 --- a/CoreNewFeatureVC/FrameWorks/CoreCategory/UIView/UIView+Extend.h +++ /dev/null @@ -1,86 +0,0 @@ -// -// UIView+Extend.h -// wucai -// -// Created by muxi on 14/10/26. -// Copyright (c) 2014年 muxi. All rights reserved. -// - -#import -#import "UIColor+Extend.h" - - -typedef enum{ - - //上 - UIViewBorderDirectTop=0, - - //左 - UIViewBorderDirectLeft, - - //下 - UIViewBorderDirectBottom, - - //右 - UIViewBorderDirectRight, - - -}UIViewBorderDirect; - -@interface UIView (Extend) - -@property (nonatomic, assign) CGFloat x; -@property (nonatomic, assign) CGFloat y; -@property (nonatomic, assign) CGFloat width; -@property (nonatomic, assign) CGFloat height; -@property (nonatomic, assign) CGSize size; -@property (nonatomic, assign) CGPoint origin; -@property (nonatomic,assign) CGFloat radius; - - - - -/** - * 添加边框:注给scrollView添加会出错 - * - * @param direct 方向 - * @param color 颜色 - * @param width 线宽 - */ --(void)addSingleBorder:(UIViewBorderDirect)direct color:(UIColor *)color width:(CGFloat)width; - - -/** - * 自动从xib创建视图 - */ -+(instancetype)viewFromXIB; - - -/** - * 添加一组子view: - */ --(void)addSubviewsWithArray:(NSArray *)subViews; - - -/** - * 添加边框:四边 - */ --(void)setBorder:(UIColor *)color width:(CGFloat)width; - - - -/** - * 调试 - */ --(void)debug:(UIColor *)color width:(CGFloat)width; - - - -/** - * 批量移除视图 - * - * @param views 需要移除的视图数组 - */ -+(void)removeViews:(NSArray *)views; - -@end diff --git a/CoreNewFeatureVC/FrameWorks/CoreCategory/UIView/UIView+Extend.m b/CoreNewFeatureVC/FrameWorks/CoreCategory/UIView/UIView+Extend.m deleted file mode 100755 index 4286b06..0000000 --- a/CoreNewFeatureVC/FrameWorks/CoreCategory/UIView/UIView+Extend.m +++ /dev/null @@ -1,255 +0,0 @@ -// -// UIView+Extend.m -// wucai -// -// Created by muxi on 14/10/26. -// Copyright (c) 2014年 muxi. All rights reserved. -// - -#import "UIView+Extend.h" - - - - - -@implementation UIView (Extend) - - - -/** - * 添加边框:注给scrollView添加会出错 - * - * @param direct 方向 - * @param color 颜色 - * @param width 线宽 - */ --(void)addSingleBorder:(UIViewBorderDirect)direct color:(UIColor *)color width:(CGFloat)width{ - - UIView *line=[[UIView alloc] init]; - - //设置颜色 - line.backgroundColor=color; - - //添加 - [self addSubview:line]; - - //禁用ar - line.translatesAutoresizingMaskIntoConstraints=NO; - - NSDictionary *views=NSDictionaryOfVariableBindings(line); - NSDictionary *metrics=@{@"w":@(width),@"y":@(self.height - width),@"x":@(self.width - width)}; - - - NSString *vfl_H=@""; - NSString *vfl_W=@""; - - //上 - if(UIViewBorderDirectTop==direct){ - vfl_H=@"H:|-0-[line]-0-|"; - vfl_W=@"V:|-0-[line(==w)]"; - } - - //左 - if(UIViewBorderDirectLeft==direct){ - vfl_H=@"H:|-0-[line(==w)]"; - vfl_W=@"V:|-0-[line]-0-|"; - } - - //下 - if(UIViewBorderDirectBottom==direct){ - vfl_H=@"H:|-0-[line]-0-|"; - vfl_W=@"V:[line(==w)]-0-|"; - } - - //右 - if(UIViewBorderDirectRight==direct){ - vfl_H=@"H:[line(==w)]-0-|"; - vfl_W=@"V:|-0-[line]-0-|"; - } - - - [self addConstraints:[NSLayoutConstraint constraintsWithVisualFormat:vfl_H options:0 metrics:metrics views:views]]; - [self addConstraints:[NSLayoutConstraint constraintsWithVisualFormat:vfl_W options:0 metrics:metrics views:views]]; -} - - - -/** - * 自动从xib创建视图 - */ -+(instancetype)viewFromXIB{ - - NSString *name=NSStringFromClass(self); - - UIView *xibView=[[[NSBundle mainBundle] loadNibNamed:name owner:nil options:nil] firstObject]; - - if(xibView==nil){ - NSLog(@"CoreXibView:从xib创建视图失败,当前类是:%@",name); - } - - return xibView; -} - - - - -- (void)setX:(CGFloat)x -{ - CGRect frame = self.frame; - frame.origin.x = x; - self.frame = frame; -} - -- (void)setY:(CGFloat)y -{ - CGRect frame = self.frame; - frame.origin.y = y; - self.frame = frame; -} - -- (CGFloat)x -{ - return self.frame.origin.x; -} - -- (CGFloat)y -{ - return self.frame.origin.y; -} - -- (void)setWidth:(CGFloat)width -{ - CGRect frame = self.frame; - frame.size.width = width; - self.frame = frame; -} - -- (void)setHeight:(CGFloat)height -{ - CGRect frame = self.frame; - frame.size.height = height; - self.frame = frame; -} - -- (CGFloat)height -{ - return self.frame.size.height; -} - -- (CGFloat)width -{ - return self.frame.size.width; -} - -- (void)setSize:(CGSize)size -{ - CGRect frame = self.frame; - frame.size = size; - self.frame = frame; -} - -- (CGSize)size -{ - return self.frame.size; -} - -- (void)setOrigin:(CGPoint)origin -{ - CGRect frame = self.frame; - frame.origin = origin; - self.frame = frame; -} - -- (CGPoint)origin -{ - return self.frame.origin; -} - - - -#pragma mark 添加一组子view: --(void)addSubviewsWithArray:(NSArray *)subViews{ - - for (UIView *view in subViews) { - - [self addSubview:view]; - - } -} - - - -#pragma mark 圆角处理 --(void)setRadius:(CGFloat)r{ - - if(r<=0) r=self.frame.size.width * .5f; - - //圆角半径 - self.layer.cornerRadius=r; - - //强制 - self.layer.masksToBounds=YES; -} - --(CGFloat)radius{ - return 0; -} - -/** - * 添加底部的边线 - */ --(void)setBottomBorderColor:(UIColor *)bottomBorderColor{ - -} - - - - --(UIColor *)bottomBorderColor{ - return nil; -} - -/** - * 添加边框 - */ --(void)setBorder:(UIColor *)color width:(CGFloat)width{ - CALayer *layer=self.layer; - layer.borderColor=color.CGColor; - layer.borderWidth=width; -} - - - - -/** - * 调试 - */ --(void)debug:(UIColor *)color width:(CGFloat)width{ - - [self setBorder:color width:width]; -} - -/** - * 批量移除视图 - * - * @param views 需要移除的视图数组 - */ -+(void)removeViews:(NSArray *)views{ - - dispatch_async(dispatch_get_main_queue(), ^{ - for (UIView *view in views) { - [view removeFromSuperview]; - } - }); -} - - - - - - - - - - -@end diff --git a/CoreNewFeatureVC/FrameWorks/CoreCategory/UIWindow/UIWindow+Launch.h b/CoreNewFeatureVC/FrameWorks/CoreCategory/UIWindow/UIWindow+Launch.h deleted file mode 100755 index 13810e5..0000000 --- a/CoreNewFeatureVC/FrameWorks/CoreCategory/UIWindow/UIWindow+Launch.h +++ /dev/null @@ -1,48 +0,0 @@ -// -// UIWindow+Launch.h -// Wifi -// -// Created by muxi on 14/11/19. -// Copyright (c) 2014年 muxi. All rights reserved. -// - -#import - -@interface UIWindow (Launch) - - -/** - * 主window - */ -+(UIWindow *)appWindow; - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -@end diff --git a/CoreNewFeatureVC/FrameWorks/CoreCategory/UIWindow/UIWindow+Launch.m b/CoreNewFeatureVC/FrameWorks/CoreCategory/UIWindow/UIWindow+Launch.m deleted file mode 100755 index fe0fee1..0000000 --- a/CoreNewFeatureVC/FrameWorks/CoreCategory/UIWindow/UIWindow+Launch.m +++ /dev/null @@ -1,42 +0,0 @@ -// -// UIWindow+Launch.m -// Wifi -// -// Created by muxi on 14/11/19. -// Copyright (c) 2014年 muxi. All rights reserved. -// - -#import "UIWindow+Launch.h" - - -@implementation UIWindow (Launch) - - -#pragma mark 主window -+(UIWindow *)appWindow{ - - UIWindow *window=[[UIWindow alloc] initWithFrame:[UIScreen mainScreen].bounds]; - - //显示状态栏 - [[UIApplication sharedApplication] setStatusBarHidden:NO]; - - //状态栏样式 - [[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleLightContent]; - - //设置背景色 - window.backgroundColor=[UIColor whiteColor]; - - //成为主窗口 - [window makeKeyAndVisible]; - - //返回 - return window; -} - - - - - - - -@end diff --git a/CoreNewFeatureVC/FrameWorks/CoreExtend/CoreConst.h b/CoreNewFeatureVC/FrameWorks/CoreExtend/CoreConst.h deleted file mode 100755 index f1a6740..0000000 --- a/CoreNewFeatureVC/FrameWorks/CoreExtend/CoreConst.h +++ /dev/null @@ -1,36 +0,0 @@ - - -//ios系统版本 -#define ios8x [[[UIDevice currentDevice] systemVersion] floatValue] >=8.0f -#define ios7x ([[[UIDevice currentDevice] systemVersion] floatValue] >= 7.0f) && ([[[UIDevice currentDevice] systemVersion] floatValue] < 8.0f) -#define ios6x [[[UIDevice currentDevice] systemVersion] floatValue] < 7.0f -#define iosNot6x [[[UIDevice currentDevice] systemVersion] floatValue] >= 7.0f - - -#define iphone4x_3_5 ([UIScreen mainScreen].bounds.size.height==480.0f) - -#define iphone5x_4_0 ([UIScreen mainScreen].bounds.size.height==568.0f) - -#define iphone6_4_7 ([UIScreen mainScreen].bounds.size.height==667.0f) - -#define iphone6Plus_5_5 ([UIScreen mainScreen].bounds.size.height==736.0f || [UIScreen mainScreen].bounds.size.height==414.0f) - -//屏幕宽高 -#define kScreenW [[UIScreen mainScreen] bounds].size.width -#define kScreenH [[UIScreen mainScreen] bounds].size.height - -//屏幕frame,bounds,size -#define kScreenFrame [UIScreen mainScreen].bounds -#define kScreenBounds [UIScreen mainScreen].bounds -#define kScreenSize [UIScreen mainScreen].bounds.size - - - - - -#define StringFromInteger(i) [NSString stringWithFormat:@"%@",@(i)] - - - -/** 度数 */ -#define angle(d) ((M_PI / 180.0f) * d) diff --git a/CoreNewFeatureVC/FrameWorks/Masonry/LIb/Masonry/Info.plist b/CoreNewFeatureVC/FrameWorks/Masonry/LIb/Masonry/Info.plist deleted file mode 100755 index 8d0256d..0000000 --- a/CoreNewFeatureVC/FrameWorks/Masonry/LIb/Masonry/Info.plist +++ /dev/null @@ -1,26 +0,0 @@ - - - - - CFBundleDevelopmentRegion - en - CFBundleExecutable - $(EXECUTABLE_NAME) - CFBundleIdentifier - com.cloudling.$(PRODUCT_NAME:rfc1034identifier) - CFBundleInfoDictionaryVersion - 6.0 - CFBundleName - $(PRODUCT_NAME) - CFBundlePackageType - FMWK - CFBundleShortVersionString - 1.0 - CFBundleSignature - ???? - CFBundleVersion - $(CURRENT_PROJECT_VERSION) - NSPrincipalClass - - - diff --git a/CoreNewFeatureVC/FrameWorks/Masonry/LIb/Masonry/MASCompositeConstraint.h b/CoreNewFeatureVC/FrameWorks/Masonry/LIb/Masonry/MASCompositeConstraint.h deleted file mode 100755 index 934c6f1..0000000 --- a/CoreNewFeatureVC/FrameWorks/Masonry/LIb/Masonry/MASCompositeConstraint.h +++ /dev/null @@ -1,26 +0,0 @@ -// -// MASCompositeConstraint.h -// Masonry -// -// Created by Jonas Budelmann on 21/07/13. -// Copyright (c) 2013 cloudling. All rights reserved. -// - -#import "MASConstraint.h" -#import "MASUtilities.h" - -/** - * A group of MASConstraint objects - */ -@interface MASCompositeConstraint : MASConstraint - -/** - * Creates a composite with a predefined array of children - * - * @param children child MASConstraints - * - * @return a composite constraint - */ -- (id)initWithChildren:(NSArray *)children; - -@end diff --git a/CoreNewFeatureVC/FrameWorks/Masonry/LIb/Masonry/MASCompositeConstraint.m b/CoreNewFeatureVC/FrameWorks/Masonry/LIb/Masonry/MASCompositeConstraint.m deleted file mode 100755 index fd1e8c8..0000000 --- a/CoreNewFeatureVC/FrameWorks/Masonry/LIb/Masonry/MASCompositeConstraint.m +++ /dev/null @@ -1,177 +0,0 @@ -// -// MASCompositeConstraint.m -// Masonry -// -// Created by Jonas Budelmann on 21/07/13. -// Copyright (c) 2013 cloudling. All rights reserved. -// - -#import "MASCompositeConstraint.h" -#import "MASConstraint+Private.h" - -@interface MASCompositeConstraint () - -@property (nonatomic, strong) id mas_key; -@property (nonatomic, strong) NSMutableArray *childConstraints; - -@end - -@implementation MASCompositeConstraint - -- (id)initWithChildren:(NSArray *)children { - self = [super init]; - if (!self) return nil; - - _childConstraints = [children mutableCopy]; - for (MASConstraint *constraint in _childConstraints) { - constraint.delegate = self; - } - - return self; -} - -#pragma mark - MASConstraintDelegate - -- (void)constraint:(MASConstraint *)constraint shouldBeReplacedWithConstraint:(MASConstraint *)replacementConstraint { - NSUInteger index = [self.childConstraints indexOfObject:constraint]; - NSAssert(index != NSNotFound, @"Could not find constraint %@", constraint); - [self.childConstraints replaceObjectAtIndex:index withObject:replacementConstraint]; -} - -- (MASConstraint *)constraint:(MASConstraint __unused *)constraint addConstraintWithLayoutAttribute:(NSLayoutAttribute)layoutAttribute { - id strongDelegate = self.delegate; - MASConstraint *newConstraint = [strongDelegate constraint:self addConstraintWithLayoutAttribute:layoutAttribute]; - newConstraint.delegate = self; - [self.childConstraints addObject:newConstraint]; - return newConstraint; -} - -#pragma mark - NSLayoutConstraint multiplier proxies - -- (MASConstraint * (^)(CGFloat))multipliedBy { - return ^id(CGFloat multiplier) { - for (MASConstraint *constraint in self.childConstraints) { - constraint.multipliedBy(multiplier); - } - return self; - }; -} - -- (MASConstraint * (^)(CGFloat))dividedBy { - return ^id(CGFloat divider) { - for (MASConstraint *constraint in self.childConstraints) { - constraint.dividedBy(divider); - } - return self; - }; -} - -#pragma mark - MASLayoutPriority proxy - -- (MASConstraint * (^)(MASLayoutPriority))priority { - return ^id(MASLayoutPriority priority) { - for (MASConstraint *constraint in self.childConstraints) { - constraint.priority(priority); - } - return self; - }; -} - -#pragma mark - NSLayoutRelation proxy - -- (MASConstraint * (^)(id, NSLayoutRelation))equalToWithRelation { - return ^id(id attr, NSLayoutRelation relation) { - for (MASConstraint *constraint in self.childConstraints.copy) { - constraint.equalToWithRelation(attr, relation); - } - return self; - }; -} - -#pragma mark - attribute chaining - -- (MASConstraint *)addConstraintWithLayoutAttribute:(NSLayoutAttribute)layoutAttribute { - [self constraint:self addConstraintWithLayoutAttribute:layoutAttribute]; - return self; -} - -#pragma mark - Animator proxy - -#if TARGET_OS_MAC && !TARGET_OS_IPHONE - -- (MASConstraint *)animator { - for (MASConstraint *constraint in self.childConstraints) { - [constraint animator]; - } - return self; -} - -#endif - -#pragma mark - debug helpers - -- (MASConstraint * (^)(id))key { - return ^id(id key) { - self.mas_key = key; - int i = 0; - for (MASConstraint *constraint in self.childConstraints) { - constraint.key([NSString stringWithFormat:@"%@[%d]", key, i++]); - } - return self; - }; -} - -#pragma mark - NSLayoutConstraint constant setters - -- (void)setInsets:(MASEdgeInsets)insets { - for (MASConstraint *constraint in self.childConstraints) { - constraint.insets = insets; - } -} - -- (void)setOffset:(CGFloat)offset { - for (MASConstraint *constraint in self.childConstraints) { - constraint.offset = offset; - } -} - -- (void)setSizeOffset:(CGSize)sizeOffset { - for (MASConstraint *constraint in self.childConstraints) { - constraint.sizeOffset = sizeOffset; - } -} - -- (void)setCenterOffset:(CGPoint)centerOffset { - for (MASConstraint *constraint in self.childConstraints) { - constraint.centerOffset = centerOffset; - } -} - -#pragma mark - MASConstraint - -- (void)activate { - for (MASConstraint *constraint in self.childConstraints) { - [constraint activate]; - } -} - -- (void)deactivate { - for (MASConstraint *constraint in self.childConstraints) { - [constraint deactivate]; - } -} - -- (void)install { - for (MASConstraint *constraint in self.childConstraints) { - constraint.updateExisting = self.updateExisting; - [constraint install]; - } -} - -- (void)uninstall { - for (MASConstraint *constraint in self.childConstraints) { - [constraint uninstall]; - } -} - -@end diff --git a/CoreNewFeatureVC/FrameWorks/Masonry/LIb/Masonry/MASConstraint+Private.h b/CoreNewFeatureVC/FrameWorks/Masonry/LIb/Masonry/MASConstraint+Private.h deleted file mode 100755 index ee0fd96..0000000 --- a/CoreNewFeatureVC/FrameWorks/Masonry/LIb/Masonry/MASConstraint+Private.h +++ /dev/null @@ -1,66 +0,0 @@ -// -// MASConstraint+Private.h -// Masonry -// -// Created by Nick Tymchenko on 29/04/14. -// Copyright (c) 2014 cloudling. All rights reserved. -// - -#import "MASConstraint.h" - -@protocol MASConstraintDelegate; - - -@interface MASConstraint () - -/** - * Whether or not to check for an existing constraint instead of adding constraint - */ -@property (nonatomic, assign) BOOL updateExisting; - -/** - * Usually MASConstraintMaker but could be a parent MASConstraint - */ -@property (nonatomic, weak) id delegate; - -/** - * Based on a provided value type, is equal to calling: - * NSNumber - setOffset: - * NSValue with CGPoint - setPointOffset: - * NSValue with CGSize - setSizeOffset: - * NSValue with MASEdgeInsets - setInsets: - */ -- (void)setLayoutConstantWithValue:(NSValue *)value; - -@end - - -@interface MASConstraint (Abstract) - -/** - * Sets the constraint relation to given NSLayoutRelation - * returns a block which accepts one of the following: - * MASViewAttribute, UIView, NSValue, NSArray - * see readme for more details. - */ -- (MASConstraint * (^)(id, NSLayoutRelation))equalToWithRelation; - -/** - * Override to set a custom chaining behaviour - */ -- (MASConstraint *)addConstraintWithLayoutAttribute:(NSLayoutAttribute)layoutAttribute; - -@end - - -@protocol MASConstraintDelegate - -/** - * Notifies the delegate when the constraint needs to be replaced with another constraint. For example - * A MASViewConstraint may turn into a MASCompositeConstraint when an array is passed to one of the equality blocks - */ -- (void)constraint:(MASConstraint *)constraint shouldBeReplacedWithConstraint:(MASConstraint *)replacementConstraint; - -- (MASConstraint *)constraint:(MASConstraint *)constraint addConstraintWithLayoutAttribute:(NSLayoutAttribute)layoutAttribute; - -@end diff --git a/CoreNewFeatureVC/FrameWorks/Masonry/LIb/Masonry/MASConstraint.h b/CoreNewFeatureVC/FrameWorks/Masonry/LIb/Masonry/MASConstraint.h deleted file mode 100755 index a4b7a78..0000000 --- a/CoreNewFeatureVC/FrameWorks/Masonry/LIb/Masonry/MASConstraint.h +++ /dev/null @@ -1,251 +0,0 @@ -// -// MASConstraint.h -// Masonry -// -// Created by Jonas Budelmann on 22/07/13. -// Copyright (c) 2013 cloudling. All rights reserved. -// - -#import "MASUtilities.h" - -/** - * Enables Constraints to be created with chainable syntax - * Constraint can represent single NSLayoutConstraint (MASViewConstraint) - * or a group of NSLayoutConstraints (MASComposisteConstraint) - */ -@interface MASConstraint : NSObject - -// Chaining Support - -/** - * Modifies the NSLayoutConstraint constant, - * only affects MASConstraints in which the first item's NSLayoutAttribute is one of the following - * NSLayoutAttributeTop, NSLayoutAttributeLeft, NSLayoutAttributeBottom, NSLayoutAttributeRight - */ -- (MASConstraint * (^)(MASEdgeInsets insets))insets; - -/** - * Modifies the NSLayoutConstraint constant, - * only affects MASConstraints in which the first item's NSLayoutAttribute is one of the following - * NSLayoutAttributeWidth, NSLayoutAttributeHeight - */ -- (MASConstraint * (^)(CGSize offset))sizeOffset; - -/** - * Modifies the NSLayoutConstraint constant, - * only affects MASConstraints in which the first item's NSLayoutAttribute is one of the following - * NSLayoutAttributeCenterX, NSLayoutAttributeCenterY - */ -- (MASConstraint * (^)(CGPoint offset))centerOffset; - -/** - * Modifies the NSLayoutConstraint constant - */ -- (MASConstraint * (^)(CGFloat offset))offset; - -/** - * Modifies the NSLayoutConstraint constant based on a value type - */ -- (MASConstraint * (^)(NSValue *value))valueOffset; - -/** - * Sets the NSLayoutConstraint multiplier property - */ -- (MASConstraint * (^)(CGFloat multiplier))multipliedBy; - -/** - * Sets the NSLayoutConstraint multiplier to 1.0/dividedBy - */ -- (MASConstraint * (^)(CGFloat divider))dividedBy; - -/** - * Sets the NSLayoutConstraint priority to a float or MASLayoutPriority - */ -- (MASConstraint * (^)(MASLayoutPriority priority))priority; - -/** - * Sets the NSLayoutConstraint priority to MASLayoutPriorityLow - */ -- (MASConstraint * (^)())priorityLow; - -/** - * Sets the NSLayoutConstraint priority to MASLayoutPriorityMedium - */ -- (MASConstraint * (^)())priorityMedium; - -/** - * Sets the NSLayoutConstraint priority to MASLayoutPriorityHigh - */ -- (MASConstraint * (^)())priorityHigh; - -/** - * Sets the constraint relation to NSLayoutRelationEqual - * returns a block which accepts one of the following: - * MASViewAttribute, UIView, NSValue, NSArray - * see readme for more details. - */ -- (MASConstraint * (^)(id attr))equalTo; - -/** - * Sets the constraint relation to NSLayoutRelationGreaterThanOrEqual - * returns a block which accepts one of the following: - * MASViewAttribute, UIView, NSValue, NSArray - * see readme for more details. - */ -- (MASConstraint * (^)(id attr))greaterThanOrEqualTo; - -/** - * Sets the constraint relation to NSLayoutRelationLessThanOrEqual - * returns a block which accepts one of the following: - * MASViewAttribute, UIView, NSValue, NSArray - * see readme for more details. - */ -- (MASConstraint * (^)(id attr))lessThanOrEqualTo; - -/** - * Optional semantic property which has no effect but improves the readability of constraint - */ -- (MASConstraint *)with; - -/** - * Optional semantic property which has no effect but improves the readability of constraint - */ -- (MASConstraint *)and; - -/** - * Creates a new MASCompositeConstraint with the called attribute and reciever - */ -- (MASConstraint *)left; -- (MASConstraint *)top; -- (MASConstraint *)right; -- (MASConstraint *)bottom; -- (MASConstraint *)leading; -- (MASConstraint *)trailing; -- (MASConstraint *)width; -- (MASConstraint *)height; -- (MASConstraint *)centerX; -- (MASConstraint *)centerY; -- (MASConstraint *)baseline; - -#if TARGET_OS_IPHONE - -- (MASConstraint *)leftMargin; -- (MASConstraint *)rightMargin; -- (MASConstraint *)topMargin; -- (MASConstraint *)bottomMargin; -- (MASConstraint *)leadingMargin; -- (MASConstraint *)trailingMargin; -- (MASConstraint *)centerXWithinMargins; -- (MASConstraint *)centerYWithinMargins; - -#endif - - -/** - * Sets the constraint debug name - */ -- (MASConstraint * (^)(id key))key; - -// NSLayoutConstraint constant Setters -// for use outside of mas_updateConstraints/mas_makeConstraints blocks - -/** - * Modifies the NSLayoutConstraint constant, - * only affects MASConstraints in which the first item's NSLayoutAttribute is one of the following - * NSLayoutAttributeTop, NSLayoutAttributeLeft, NSLayoutAttributeBottom, NSLayoutAttributeRight - */ -- (void)setInsets:(MASEdgeInsets)insets; - -/** - * Modifies the NSLayoutConstraint constant, - * only affects MASConstraints in which the first item's NSLayoutAttribute is one of the following - * NSLayoutAttributeWidth, NSLayoutAttributeHeight - */ -- (void)setSizeOffset:(CGSize)sizeOffset; - -/** - * Modifies the NSLayoutConstraint constant, - * only affects MASConstraints in which the first item's NSLayoutAttribute is one of the following - * NSLayoutAttributeCenterX, NSLayoutAttributeCenterY - */ -- (void)setCenterOffset:(CGPoint)centerOffset; - -/** - * Modifies the NSLayoutConstraint constant - */ -- (void)setOffset:(CGFloat)offset; - - -// NSLayoutConstraint Installation support - -#if TARGET_OS_MAC && !TARGET_OS_IPHONE -/** - * Whether or not to go through the animator proxy when modifying the constraint - */ -@property (nonatomic, copy, readonly) MASConstraint *animator; -#endif - -/** - * Activates an NSLayoutConstraint if it's supported by an OS. - * Invokes install otherwise. - */ -- (void)activate; - -/** - * Deactivates previously installed/activated NSLayoutConstraint. - */ -- (void)deactivate; - -/** - * Creates a NSLayoutConstraint and adds it to the appropriate view. - */ -- (void)install; - -/** - * Removes previously installed NSLayoutConstraint - */ -- (void)uninstall; - -@end - - -/** - * Convenience auto-boxing macros for MASConstraint methods. - * - * Defining MAS_SHORTHAND_GLOBALS will turn on auto-boxing for default syntax. - * A potential drawback of this is that the unprefixed macros will appear in global scope. - */ -#define mas_equalTo(...) equalTo(MASBoxValue((__VA_ARGS__))) -#define mas_greaterThanOrEqualTo(...) greaterThanOrEqualTo(MASBoxValue((__VA_ARGS__))) -#define mas_lessThanOrEqualTo(...) lessThanOrEqualTo(MASBoxValue((__VA_ARGS__))) - -#define mas_offset(...) valueOffset(MASBoxValue((__VA_ARGS__))) - - -#ifdef MAS_SHORTHAND_GLOBALS - -#define equalTo(...) mas_equalTo(__VA_ARGS__) -#define greaterThanOrEqualTo(...) mas_greaterThanOrEqualTo(__VA_ARGS__) -#define lessThanOrEqualTo(...) mas_lessThanOrEqualTo(__VA_ARGS__) - -#define offset(...) mas_offset(__VA_ARGS__) - -#endif - - -@interface MASConstraint (AutoboxingSupport) - -/** - * Aliases to corresponding relation methods (for shorthand macros) - * Also needed to aid autocompletion - */ -- (MASConstraint * (^)(id attr))mas_equalTo; -- (MASConstraint * (^)(id attr))mas_greaterThanOrEqualTo; -- (MASConstraint * (^)(id attr))mas_lessThanOrEqualTo; - -/** - * A dummy method to aid autocompletion - */ -- (MASConstraint * (^)(id offset))mas_offset; - -@end diff --git a/CoreNewFeatureVC/FrameWorks/Masonry/LIb/Masonry/MASConstraint.m b/CoreNewFeatureVC/FrameWorks/Masonry/LIb/Masonry/MASConstraint.m deleted file mode 100755 index 8497912..0000000 --- a/CoreNewFeatureVC/FrameWorks/Masonry/LIb/Masonry/MASConstraint.m +++ /dev/null @@ -1,281 +0,0 @@ -// -// MASConstraint.m -// Masonry -// -// Created by Nick Tymchenko on 1/20/14. -// - -#import "MASConstraint.h" -#import "MASConstraint+Private.h" - -#define MASMethodNotImplemented() \ - @throw [NSException exceptionWithName:NSInternalInconsistencyException \ - reason:[NSString stringWithFormat:@"You must override %@ in a subclass.", NSStringFromSelector(_cmd)] \ - userInfo:nil] - -@implementation MASConstraint - -#pragma mark - Init - -- (id)init { - NSAssert(![self isMemberOfClass:[MASConstraint class]], @"MASConstraint is an abstract class, you should not instantiate it directly."); - return [super init]; -} - -#pragma mark - NSLayoutRelation proxies - -- (MASConstraint * (^)(id))equalTo { - return ^id(id attribute) { - return self.equalToWithRelation(attribute, NSLayoutRelationEqual); - }; -} - -- (MASConstraint * (^)(id))mas_equalTo { - return ^id(id attribute) { - return self.equalToWithRelation(attribute, NSLayoutRelationEqual); - }; -} - -- (MASConstraint * (^)(id))greaterThanOrEqualTo { - return ^id(id attribute) { - return self.equalToWithRelation(attribute, NSLayoutRelationGreaterThanOrEqual); - }; -} - -- (MASConstraint * (^)(id))mas_greaterThanOrEqualTo { - return ^id(id attribute) { - return self.equalToWithRelation(attribute, NSLayoutRelationGreaterThanOrEqual); - }; -} - -- (MASConstraint * (^)(id))lessThanOrEqualTo { - return ^id(id attribute) { - return self.equalToWithRelation(attribute, NSLayoutRelationLessThanOrEqual); - }; -} - -- (MASConstraint * (^)(id))mas_lessThanOrEqualTo { - return ^id(id attribute) { - return self.equalToWithRelation(attribute, NSLayoutRelationLessThanOrEqual); - }; -} - -#pragma mark - MASLayoutPriority proxies - -- (MASConstraint * (^)())priorityLow { - return ^id{ - self.priority(MASLayoutPriorityDefaultLow); - return self; - }; -} - -- (MASConstraint * (^)())priorityMedium { - return ^id{ - self.priority(MASLayoutPriorityDefaultMedium); - return self; - }; -} - -- (MASConstraint * (^)())priorityHigh { - return ^id{ - self.priority(MASLayoutPriorityDefaultHigh); - return self; - }; -} - -#pragma mark - NSLayoutConstraint constant proxies - -- (MASConstraint * (^)(MASEdgeInsets))insets { - return ^id(MASEdgeInsets insets){ - self.insets = insets; - return self; - }; -} - -- (MASConstraint * (^)(CGSize))sizeOffset { - return ^id(CGSize offset) { - self.sizeOffset = offset; - return self; - }; -} - -- (MASConstraint * (^)(CGPoint))centerOffset { - return ^id(CGPoint offset) { - self.centerOffset = offset; - return self; - }; -} - -- (MASConstraint * (^)(CGFloat))offset { - return ^id(CGFloat offset){ - self.offset = offset; - return self; - }; -} - -- (MASConstraint * (^)(NSValue *value))valueOffset { - return ^id(NSValue *offset) { - NSAssert([offset isKindOfClass:NSValue.class], @"expected an NSValue offset, got: %@", offset); - [self setLayoutConstantWithValue:offset]; - return self; - }; -} - -- (MASConstraint * (^)(id offset))mas_offset { - // Will never be called due to macro - return nil; -} - -#pragma mark - NSLayoutConstraint constant setter - -- (void)setLayoutConstantWithValue:(NSValue *)value { - if ([value isKindOfClass:NSNumber.class]) { - self.offset = [(NSNumber *)value doubleValue]; - } else if (strcmp(value.objCType, @encode(CGPoint)) == 0) { - CGPoint point; - [value getValue:&point]; - self.centerOffset = point; - } else if (strcmp(value.objCType, @encode(CGSize)) == 0) { - CGSize size; - [value getValue:&size]; - self.sizeOffset = size; - } else if (strcmp(value.objCType, @encode(MASEdgeInsets)) == 0) { - MASEdgeInsets insets; - [value getValue:&insets]; - self.insets = insets; - } else { - NSAssert(NO, @"attempting to set layout constant with unsupported value: %@", value); - } -} - -#pragma mark - Semantic properties - -- (MASConstraint *)with { - return self; -} - -- (MASConstraint *)and { - return self; -} - -#pragma mark - Chaining - -- (MASConstraint *)addConstraintWithLayoutAttribute:(NSLayoutAttribute __unused)layoutAttribute { - MASMethodNotImplemented(); -} - -- (MASConstraint *)left { - return [self addConstraintWithLayoutAttribute:NSLayoutAttributeLeft]; -} - -- (MASConstraint *)top { - return [self addConstraintWithLayoutAttribute:NSLayoutAttributeTop]; -} - -- (MASConstraint *)right { - return [self addConstraintWithLayoutAttribute:NSLayoutAttributeRight]; -} - -- (MASConstraint *)bottom { - return [self addConstraintWithLayoutAttribute:NSLayoutAttributeBottom]; -} - -- (MASConstraint *)leading { - return [self addConstraintWithLayoutAttribute:NSLayoutAttributeLeading]; -} - -- (MASConstraint *)trailing { - return [self addConstraintWithLayoutAttribute:NSLayoutAttributeTrailing]; -} - -- (MASConstraint *)width { - return [self addConstraintWithLayoutAttribute:NSLayoutAttributeWidth]; -} - -- (MASConstraint *)height { - return [self addConstraintWithLayoutAttribute:NSLayoutAttributeHeight]; -} - -- (MASConstraint *)centerX { - return [self addConstraintWithLayoutAttribute:NSLayoutAttributeCenterX]; -} - -- (MASConstraint *)centerY { - return [self addConstraintWithLayoutAttribute:NSLayoutAttributeCenterY]; -} - -- (MASConstraint *)baseline { - return [self addConstraintWithLayoutAttribute:NSLayoutAttributeBaseline]; -} - -#if TARGET_OS_IPHONE - -- (MASConstraint *)leftMargin { - return [self addConstraintWithLayoutAttribute:NSLayoutAttributeLeftMargin]; -} - -- (MASConstraint *)rightMargin { - return [self addConstraintWithLayoutAttribute:NSLayoutAttributeRightMargin]; -} - -- (MASConstraint *)topMargin { - return [self addConstraintWithLayoutAttribute:NSLayoutAttributeTopMargin]; -} - -- (MASConstraint *)bottomMargin { - return [self addConstraintWithLayoutAttribute:NSLayoutAttributeBottomMargin]; -} - -- (MASConstraint *)leadingMargin { - return [self addConstraintWithLayoutAttribute:NSLayoutAttributeLeadingMargin]; -} - -- (MASConstraint *)trailingMargin { - return [self addConstraintWithLayoutAttribute:NSLayoutAttributeTrailingMargin]; -} - -- (MASConstraint *)centerXWithinMargins { - return [self addConstraintWithLayoutAttribute:NSLayoutAttributeCenterXWithinMargins]; -} - -- (MASConstraint *)centerYWithinMargins { - return [self addConstraintWithLayoutAttribute:NSLayoutAttributeCenterYWithinMargins]; -} - -#endif - -#pragma mark - Abstract - -- (MASConstraint * (^)(CGFloat multiplier))multipliedBy { MASMethodNotImplemented(); } - -- (MASConstraint * (^)(CGFloat divider))dividedBy { MASMethodNotImplemented(); } - -- (MASConstraint * (^)(MASLayoutPriority priority))priority { MASMethodNotImplemented(); } - -- (MASConstraint * (^)(id, NSLayoutRelation))equalToWithRelation { MASMethodNotImplemented(); } - -- (MASConstraint * (^)(id key))key { MASMethodNotImplemented(); } - -- (void)setInsets:(MASEdgeInsets __unused)insets { MASMethodNotImplemented(); } - -- (void)setSizeOffset:(CGSize __unused)sizeOffset { MASMethodNotImplemented(); } - -- (void)setCenterOffset:(CGPoint __unused)centerOffset { MASMethodNotImplemented(); } - -- (void)setOffset:(CGFloat __unused)offset { MASMethodNotImplemented(); } - -#if TARGET_OS_MAC && !TARGET_OS_IPHONE - -- (MASConstraint *)animator { MASMethodNotImplemented(); } - -#endif - -- (void)activate { MASMethodNotImplemented(); } - -- (void)deactivate { MASMethodNotImplemented(); } - -- (void)install { MASMethodNotImplemented(); } - -- (void)uninstall { MASMethodNotImplemented(); } - -@end diff --git a/CoreNewFeatureVC/FrameWorks/Masonry/LIb/Masonry/MASConstraintMaker.h b/CoreNewFeatureVC/FrameWorks/Masonry/LIb/Masonry/MASConstraintMaker.h deleted file mode 100755 index 7e31858..0000000 --- a/CoreNewFeatureVC/FrameWorks/Masonry/LIb/Masonry/MASConstraintMaker.h +++ /dev/null @@ -1,132 +0,0 @@ -// -// MASConstraintBuilder.h -// Masonry -// -// Created by Jonas Budelmann on 20/07/13. -// Copyright (c) 2013 cloudling. All rights reserved. -// - -#import "MASConstraint.h" -#import "MASUtilities.h" - -typedef NS_OPTIONS(NSInteger, MASAttribute) { - MASAttributeLeft = 1 << NSLayoutAttributeLeft, - MASAttributeRight = 1 << NSLayoutAttributeRight, - MASAttributeTop = 1 << NSLayoutAttributeTop, - MASAttributeBottom = 1 << NSLayoutAttributeBottom, - MASAttributeLeading = 1 << NSLayoutAttributeLeading, - MASAttributeTrailing = 1 << NSLayoutAttributeTrailing, - MASAttributeWidth = 1 << NSLayoutAttributeWidth, - MASAttributeHeight = 1 << NSLayoutAttributeHeight, - MASAttributeCenterX = 1 << NSLayoutAttributeCenterX, - MASAttributeCenterY = 1 << NSLayoutAttributeCenterY, - MASAttributeBaseline = 1 << NSLayoutAttributeBaseline, - -#if TARGET_OS_IPHONE - - MASAttributeLeftMargin = 1 << NSLayoutAttributeLeftMargin, - MASAttributeRightMargin = 1 << NSLayoutAttributeRightMargin, - MASAttributeTopMargin = 1 << NSLayoutAttributeTopMargin, - MASAttributeBottomMargin = 1 << NSLayoutAttributeBottomMargin, - MASAttributeLeadingMargin = 1 << NSLayoutAttributeLeadingMargin, - MASAttributeTrailingMargin = 1 << NSLayoutAttributeTrailingMargin, - MASAttributeCenterXWithinMargins = 1 << NSLayoutAttributeCenterXWithinMargins, - MASAttributeCenterYWithinMargins = 1 << NSLayoutAttributeCenterYWithinMargins, - -#endif - -}; - -/** - * Provides factory methods for creating MASConstraints. - * Constraints are collected until they are ready to be installed - * - */ -@interface MASConstraintMaker : NSObject - -/** - * The following properties return a new MASViewConstraint - * with the first item set to the makers associated view and the appropriate MASViewAttribute - */ -@property (nonatomic, strong, readonly) MASConstraint *left; -@property (nonatomic, strong, readonly) MASConstraint *top; -@property (nonatomic, strong, readonly) MASConstraint *right; -@property (nonatomic, strong, readonly) MASConstraint *bottom; -@property (nonatomic, strong, readonly) MASConstraint *leading; -@property (nonatomic, strong, readonly) MASConstraint *trailing; -@property (nonatomic, strong, readonly) MASConstraint *width; -@property (nonatomic, strong, readonly) MASConstraint *height; -@property (nonatomic, strong, readonly) MASConstraint *centerX; -@property (nonatomic, strong, readonly) MASConstraint *centerY; -@property (nonatomic, strong, readonly) MASConstraint *baseline; - -#if TARGET_OS_IPHONE - -@property (nonatomic, strong, readonly) MASConstraint *leftMargin; -@property (nonatomic, strong, readonly) MASConstraint *rightMargin; -@property (nonatomic, strong, readonly) MASConstraint *topMargin; -@property (nonatomic, strong, readonly) MASConstraint *bottomMargin; -@property (nonatomic, strong, readonly) MASConstraint *leadingMargin; -@property (nonatomic, strong, readonly) MASConstraint *trailingMargin; -@property (nonatomic, strong, readonly) MASConstraint *centerXWithinMargins; -@property (nonatomic, strong, readonly) MASConstraint *centerYWithinMargins; - -#endif - -/** - * Returns a block which creates a new MASCompositeConstraint with the first item set - * to the makers associated view and children corresponding to the set bits in the - * MASAttribute parameter. Combine multiple attributes via binary-or. - */ -@property (nonatomic, strong, readonly) MASConstraint *(^attributes)(MASAttribute attrs); - -/** - * Creates a MASCompositeConstraint with type MASCompositeConstraintTypeEdges - * which generates the appropriate MASViewConstraint children (top, left, bottom, right) - * with the first item set to the makers associated view - */ -@property (nonatomic, strong, readonly) MASConstraint *edges; - -/** - * Creates a MASCompositeConstraint with type MASCompositeConstraintTypeSize - * which generates the appropriate MASViewConstraint children (width, height) - * with the first item set to the makers associated view - */ -@property (nonatomic, strong, readonly) MASConstraint *size; - -/** - * Creates a MASCompositeConstraint with type MASCompositeConstraintTypeCenter - * which generates the appropriate MASViewConstraint children (centerX, centerY) - * with the first item set to the makers associated view - */ -@property (nonatomic, strong, readonly) MASConstraint *center; - -/** - * Whether or not to check for an existing constraint instead of adding constraint - */ -@property (nonatomic, assign) BOOL updateExisting; - -/** - * Whether or not to remove existing constraints prior to installing - */ -@property (nonatomic, assign) BOOL removeExisting; - -/** - * initialises the maker with a default view - * - * @param view any MASConstrait are created with this view as the first item - * - * @return a new MASConstraintMaker - */ -- (id)initWithView:(MAS_VIEW *)view; - -/** - * Calls install method on any MASConstraints which have been created by this maker - * - * @return an array of all the installed MASConstraints - */ -- (NSArray *)install; - -- (MASConstraint * (^)(dispatch_block_t))group; - -@end diff --git a/CoreNewFeatureVC/FrameWorks/Masonry/LIb/Masonry/MASConstraintMaker.m b/CoreNewFeatureVC/FrameWorks/Masonry/LIb/Masonry/MASConstraintMaker.m deleted file mode 100755 index 78f93ec..0000000 --- a/CoreNewFeatureVC/FrameWorks/Masonry/LIb/Masonry/MASConstraintMaker.m +++ /dev/null @@ -1,250 +0,0 @@ -// -// MASConstraintBuilder.m -// Masonry -// -// Created by Jonas Budelmann on 20/07/13. -// Copyright (c) 2013 cloudling. All rights reserved. -// - -#import "MASConstraintMaker.h" -#import "MASViewConstraint.h" -#import "MASCompositeConstraint.h" -#import "MASConstraint+Private.h" -#import "MASViewAttribute.h" -#import "View+MASAdditions.h" - -@interface MASConstraintMaker () - -@property (nonatomic, weak) MAS_VIEW *view; -@property (nonatomic, strong) NSMutableArray *constraints; - -@end - -@implementation MASConstraintMaker - -- (id)initWithView:(MAS_VIEW *)view { - self = [super init]; - if (!self) return nil; - - self.view = view; - self.constraints = NSMutableArray.new; - - return self; -} - -- (NSArray *)install { - if (self.removeExisting) { - NSArray *installedConstraints = [MASViewConstraint installedConstraintsForView:self.view]; - for (MASConstraint *constraint in installedConstraints) { - [constraint uninstall]; - } - } - NSArray *constraints = self.constraints.copy; - for (MASConstraint *constraint in constraints) { - constraint.updateExisting = self.updateExisting; - [constraint install]; - } - [self.constraints removeAllObjects]; - return constraints; -} - -#pragma mark - MASConstraintDelegate - -- (void)constraint:(MASConstraint *)constraint shouldBeReplacedWithConstraint:(MASConstraint *)replacementConstraint { - NSUInteger index = [self.constraints indexOfObject:constraint]; - NSAssert(index != NSNotFound, @"Could not find constraint %@", constraint); - [self.constraints replaceObjectAtIndex:index withObject:replacementConstraint]; -} - -- (MASConstraint *)constraint:(MASConstraint *)constraint addConstraintWithLayoutAttribute:(NSLayoutAttribute)layoutAttribute { - MASViewAttribute *viewAttribute = [[MASViewAttribute alloc] initWithView:self.view layoutAttribute:layoutAttribute]; - MASViewConstraint *newConstraint = [[MASViewConstraint alloc] initWithFirstViewAttribute:viewAttribute]; - if ([constraint isKindOfClass:MASViewConstraint.class]) { - //replace with composite constraint - NSArray *children = @[constraint, newConstraint]; - MASCompositeConstraint *compositeConstraint = [[MASCompositeConstraint alloc] initWithChildren:children]; - compositeConstraint.delegate = self; - [self constraint:constraint shouldBeReplacedWithConstraint:compositeConstraint]; - return compositeConstraint; - } - if (!constraint) { - newConstraint.delegate = self; - [self.constraints addObject:newConstraint]; - } - return newConstraint; -} - -- (MASConstraint *)addConstraintWithAttributes:(MASAttribute)attrs { - __unused MASAttribute anyAttribute = (MASAttributeLeft | MASAttributeRight | MASAttributeTop | MASAttributeBottom | MASAttributeLeading - | MASAttributeTrailing | MASAttributeWidth | MASAttributeHeight | MASAttributeCenterX - | MASAttributeCenterY | MASAttributeBaseline -#if TARGET_OS_IPHONE - | MASAttributeLeftMargin | MASAttributeRightMargin | MASAttributeTopMargin | MASAttributeBottomMargin - | MASAttributeLeadingMargin | MASAttributeTrailingMargin | MASAttributeCenterXWithinMargins - | MASAttributeCenterYWithinMargins -#endif - ); - - NSAssert((attrs & anyAttribute) != 0, @"You didn't pass any attribute to make.attributes(...)"); - - NSMutableArray *attributes = [NSMutableArray array]; - - if (attrs & MASAttributeLeft) [attributes addObject:self.view.mas_left]; - if (attrs & MASAttributeRight) [attributes addObject:self.view.mas_right]; - if (attrs & MASAttributeTop) [attributes addObject:self.view.mas_top]; - if (attrs & MASAttributeBottom) [attributes addObject:self.view.mas_bottom]; - if (attrs & MASAttributeLeading) [attributes addObject:self.view.mas_leading]; - if (attrs & MASAttributeTrailing) [attributes addObject:self.view.mas_trailing]; - if (attrs & MASAttributeWidth) [attributes addObject:self.view.mas_width]; - if (attrs & MASAttributeHeight) [attributes addObject:self.view.mas_height]; - if (attrs & MASAttributeCenterX) [attributes addObject:self.view.mas_centerX]; - if (attrs & MASAttributeCenterY) [attributes addObject:self.view.mas_centerY]; - if (attrs & MASAttributeBaseline) [attributes addObject:self.view.mas_baseline]; - -#if TARGET_OS_IPHONE - - if (attrs & MASAttributeLeftMargin) [attributes addObject:self.view.mas_leftMargin]; - if (attrs & MASAttributeRightMargin) [attributes addObject:self.view.mas_rightMargin]; - if (attrs & MASAttributeTopMargin) [attributes addObject:self.view.mas_topMargin]; - if (attrs & MASAttributeBottomMargin) [attributes addObject:self.view.mas_bottomMargin]; - if (attrs & MASAttributeLeadingMargin) [attributes addObject:self.view.mas_leadingMargin]; - if (attrs & MASAttributeTrailingMargin) [attributes addObject:self.view.mas_trailingMargin]; - if (attrs & MASAttributeCenterXWithinMargins) [attributes addObject:self.view.mas_centerXWithinMargins]; - if (attrs & MASAttributeCenterYWithinMargins) [attributes addObject:self.view.mas_centerYWithinMargins]; - -#endif - - NSMutableArray *children = [NSMutableArray arrayWithCapacity:attributes.count]; - - for (MASViewAttribute *a in attributes) { - [children addObject:[[MASViewConstraint alloc] initWithFirstViewAttribute:a]]; - } - - MASCompositeConstraint *constraint = [[MASCompositeConstraint alloc] initWithChildren:children]; - constraint.delegate = self; - [self.constraints addObject:constraint]; - return constraint; -} - -#pragma mark - standard Attributes - -- (MASConstraint *)addConstraintWithLayoutAttribute:(NSLayoutAttribute)layoutAttribute { - return [self constraint:nil addConstraintWithLayoutAttribute:layoutAttribute]; -} - -- (MASConstraint *)left { - return [self addConstraintWithLayoutAttribute:NSLayoutAttributeLeft]; -} - -- (MASConstraint *)top { - return [self addConstraintWithLayoutAttribute:NSLayoutAttributeTop]; -} - -- (MASConstraint *)right { - return [self addConstraintWithLayoutAttribute:NSLayoutAttributeRight]; -} - -- (MASConstraint *)bottom { - return [self addConstraintWithLayoutAttribute:NSLayoutAttributeBottom]; -} - -- (MASConstraint *)leading { - return [self addConstraintWithLayoutAttribute:NSLayoutAttributeLeading]; -} - -- (MASConstraint *)trailing { - return [self addConstraintWithLayoutAttribute:NSLayoutAttributeTrailing]; -} - -- (MASConstraint *)width { - return [self addConstraintWithLayoutAttribute:NSLayoutAttributeWidth]; -} - -- (MASConstraint *)height { - return [self addConstraintWithLayoutAttribute:NSLayoutAttributeHeight]; -} - -- (MASConstraint *)centerX { - return [self addConstraintWithLayoutAttribute:NSLayoutAttributeCenterX]; -} - -- (MASConstraint *)centerY { - return [self addConstraintWithLayoutAttribute:NSLayoutAttributeCenterY]; -} - -- (MASConstraint *)baseline { - return [self addConstraintWithLayoutAttribute:NSLayoutAttributeBaseline]; -} - -- (MASConstraint *(^)(MASAttribute))attributes { - return ^(MASAttribute attrs){ - return [self addConstraintWithAttributes:attrs]; - }; -} - -#if TARGET_OS_IPHONE - -- (MASConstraint *)leftMargin { - return [self addConstraintWithLayoutAttribute:NSLayoutAttributeLeftMargin]; -} - -- (MASConstraint *)rightMargin { - return [self addConstraintWithLayoutAttribute:NSLayoutAttributeRightMargin]; -} - -- (MASConstraint *)topMargin { - return [self addConstraintWithLayoutAttribute:NSLayoutAttributeTopMargin]; -} - -- (MASConstraint *)bottomMargin { - return [self addConstraintWithLayoutAttribute:NSLayoutAttributeBottomMargin]; -} - -- (MASConstraint *)leadingMargin { - return [self addConstraintWithLayoutAttribute:NSLayoutAttributeLeadingMargin]; -} - -- (MASConstraint *)trailingMargin { - return [self addConstraintWithLayoutAttribute:NSLayoutAttributeTrailingMargin]; -} - -- (MASConstraint *)centerXWithinMargins { - return [self addConstraintWithLayoutAttribute:NSLayoutAttributeCenterXWithinMargins]; -} - -- (MASConstraint *)centerYWithinMargins { - return [self addConstraintWithLayoutAttribute:NSLayoutAttributeCenterYWithinMargins]; -} - -#endif - - -#pragma mark - composite Attributes - -- (MASConstraint *)edges { - return [self addConstraintWithAttributes:MASAttributeTop | MASAttributeLeft | MASAttributeRight | MASAttributeBottom]; -} - -- (MASConstraint *)size { - return [self addConstraintWithAttributes:MASAttributeWidth | MASAttributeHeight]; -} - -- (MASConstraint *)center { - return [self addConstraintWithAttributes:MASAttributeCenterX | MASAttributeCenterY]; -} - -#pragma mark - grouping - -- (MASConstraint *(^)(dispatch_block_t group))group { - return ^id(dispatch_block_t group) { - NSInteger previousCount = self.constraints.count; - group(); - - NSArray *children = [self.constraints subarrayWithRange:NSMakeRange(previousCount, self.constraints.count - previousCount)]; - MASCompositeConstraint *constraint = [[MASCompositeConstraint alloc] initWithChildren:children]; - constraint.delegate = self; - return constraint; - }; -} - -@end diff --git a/CoreNewFeatureVC/FrameWorks/Masonry/LIb/Masonry/MASLayoutConstraint.h b/CoreNewFeatureVC/FrameWorks/Masonry/LIb/Masonry/MASLayoutConstraint.h deleted file mode 100755 index 699041c..0000000 --- a/CoreNewFeatureVC/FrameWorks/Masonry/LIb/Masonry/MASLayoutConstraint.h +++ /dev/null @@ -1,22 +0,0 @@ -// -// MASLayoutConstraint.h -// Masonry -// -// Created by Jonas Budelmann on 3/08/13. -// Copyright (c) 2013 Jonas Budelmann. All rights reserved. -// - -#import "MASUtilities.h" - -/** - * When you are debugging or printing the constraints attached to a view this subclass - * makes it easier to identify which constraints have been created via Masonry - */ -@interface MASLayoutConstraint : NSLayoutConstraint - -/** - * a key to associate with this constraint - */ -@property (nonatomic, strong) id mas_key; - -@end diff --git a/CoreNewFeatureVC/FrameWorks/Masonry/LIb/Masonry/MASLayoutConstraint.m b/CoreNewFeatureVC/FrameWorks/Masonry/LIb/Masonry/MASLayoutConstraint.m deleted file mode 100755 index 3483f02..0000000 --- a/CoreNewFeatureVC/FrameWorks/Masonry/LIb/Masonry/MASLayoutConstraint.m +++ /dev/null @@ -1,13 +0,0 @@ -// -// MASLayoutConstraint.m -// Masonry -// -// Created by Jonas Budelmann on 3/08/13. -// Copyright (c) 2013 Jonas Budelmann. All rights reserved. -// - -#import "MASLayoutConstraint.h" - -@implementation MASLayoutConstraint - -@end diff --git a/CoreNewFeatureVC/FrameWorks/Masonry/LIb/Masonry/MASUtilities.h b/CoreNewFeatureVC/FrameWorks/Masonry/LIb/Masonry/MASUtilities.h deleted file mode 100755 index 472d7a1..0000000 --- a/CoreNewFeatureVC/FrameWorks/Masonry/LIb/Masonry/MASUtilities.h +++ /dev/null @@ -1,131 +0,0 @@ -// -// MASUtilities.h -// Masonry -// -// Created by Jonas Budelmann on 19/08/13. -// Copyright (c) 2013 Jonas Budelmann. All rights reserved. -// - -#import - -#if TARGET_OS_IPHONE - - #import - #define MAS_VIEW UIView - #define MASEdgeInsets UIEdgeInsets - - typedef UILayoutPriority MASLayoutPriority; - static const MASLayoutPriority MASLayoutPriorityRequired = UILayoutPriorityRequired; - static const MASLayoutPriority MASLayoutPriorityDefaultHigh = UILayoutPriorityDefaultHigh; - static const MASLayoutPriority MASLayoutPriorityDefaultMedium = 500; - static const MASLayoutPriority MASLayoutPriorityDefaultLow = UILayoutPriorityDefaultLow; - static const MASLayoutPriority MASLayoutPriorityFittingSizeLevel = UILayoutPriorityFittingSizeLevel; - -#elif TARGET_OS_MAC - - #import - #define MAS_VIEW NSView - #define MASEdgeInsets NSEdgeInsets - - typedef NSLayoutPriority MASLayoutPriority; - static const MASLayoutPriority MASLayoutPriorityRequired = NSLayoutPriorityRequired; - static const MASLayoutPriority MASLayoutPriorityDefaultHigh = NSLayoutPriorityDefaultHigh; - static const MASLayoutPriority MASLayoutPriorityDragThatCanResizeWindow = NSLayoutPriorityDragThatCanResizeWindow; - static const MASLayoutPriority MASLayoutPriorityDefaultMedium = 501; - static const MASLayoutPriority MASLayoutPriorityWindowSizeStayPut = NSLayoutPriorityWindowSizeStayPut; - static const MASLayoutPriority MASLayoutPriorityDragThatCannotResizeWindow = NSLayoutPriorityDragThatCannotResizeWindow; - static const MASLayoutPriority MASLayoutPriorityDefaultLow = NSLayoutPriorityDefaultLow; - static const MASLayoutPriority MASLayoutPriorityFittingSizeCompression = NSLayoutPriorityFittingSizeCompression; - -#endif - -/** - * Allows you to attach keys to objects matching the variable names passed. - * - * view1.mas_key = @"view1", view2.mas_key = @"view2"; - * - * is equivalent to: - * - * MASAttachKeys(view1, view2); - */ -#define MASAttachKeys(...) \ - NSDictionary *keyPairs = NSDictionaryOfVariableBindings(__VA_ARGS__); \ - for (id key in keyPairs.allKeys) { \ - id obj = keyPairs[key]; \ - NSAssert([obj respondsToSelector:@selector(setMas_key:)], \ - @"Cannot attach mas_key to %@", obj); \ - [obj setMas_key:key]; \ - } - -/** - * Used to create object hashes - * Based on http://www.mikeash.com/pyblog/friday-qa-2010-06-18-implementing-equality-and-hashing.html - */ -#define MAS_NSUINT_BIT (CHAR_BIT * sizeof(NSUInteger)) -#define MAS_NSUINTROTATE(val, howmuch) ((((NSUInteger)val) << howmuch) | (((NSUInteger)val) >> (MAS_NSUINT_BIT - howmuch))) - -/** - * Given a scalar or struct value, wraps it in NSValue - * Based on EXPObjectify: https://github.com/specta/expecta - */ -static inline id _MASBoxValue(const char *type, ...) { - va_list v; - va_start(v, type); - id obj = nil; - if (strcmp(type, @encode(id)) == 0) { - id actual = va_arg(v, id); - obj = actual; - } else if (strcmp(type, @encode(CGPoint)) == 0) { - CGPoint actual = (CGPoint)va_arg(v, CGPoint); - obj = [NSValue value:&actual withObjCType:type]; - } else if (strcmp(type, @encode(CGSize)) == 0) { - CGSize actual = (CGSize)va_arg(v, CGSize); - obj = [NSValue value:&actual withObjCType:type]; - } else if (strcmp(type, @encode(MASEdgeInsets)) == 0) { - MASEdgeInsets actual = (MASEdgeInsets)va_arg(v, MASEdgeInsets); - obj = [NSValue value:&actual withObjCType:type]; - } else if (strcmp(type, @encode(double)) == 0) { - double actual = (double)va_arg(v, double); - obj = [NSNumber numberWithDouble:actual]; - } else if (strcmp(type, @encode(float)) == 0) { - float actual = (float)va_arg(v, double); - obj = [NSNumber numberWithFloat:actual]; - } else if (strcmp(type, @encode(int)) == 0) { - int actual = (int)va_arg(v, int); - obj = [NSNumber numberWithInt:actual]; - } else if (strcmp(type, @encode(long)) == 0) { - long actual = (long)va_arg(v, long); - obj = [NSNumber numberWithLong:actual]; - } else if (strcmp(type, @encode(long long)) == 0) { - long long actual = (long long)va_arg(v, long long); - obj = [NSNumber numberWithLongLong:actual]; - } else if (strcmp(type, @encode(short)) == 0) { - short actual = (short)va_arg(v, int); - obj = [NSNumber numberWithShort:actual]; - } else if (strcmp(type, @encode(char)) == 0) { - char actual = (char)va_arg(v, int); - obj = [NSNumber numberWithChar:actual]; - } else if (strcmp(type, @encode(bool)) == 0) { - bool actual = (bool)va_arg(v, int); - obj = [NSNumber numberWithBool:actual]; - } else if (strcmp(type, @encode(unsigned char)) == 0) { - unsigned char actual = (unsigned char)va_arg(v, unsigned int); - obj = [NSNumber numberWithUnsignedChar:actual]; - } else if (strcmp(type, @encode(unsigned int)) == 0) { - unsigned int actual = (unsigned int)va_arg(v, unsigned int); - obj = [NSNumber numberWithUnsignedInt:actual]; - } else if (strcmp(type, @encode(unsigned long)) == 0) { - unsigned long actual = (unsigned long)va_arg(v, unsigned long); - obj = [NSNumber numberWithUnsignedLong:actual]; - } else if (strcmp(type, @encode(unsigned long long)) == 0) { - unsigned long long actual = (unsigned long long)va_arg(v, unsigned long long); - obj = [NSNumber numberWithUnsignedLongLong:actual]; - } else if (strcmp(type, @encode(unsigned short)) == 0) { - unsigned short actual = (unsigned short)va_arg(v, unsigned int); - obj = [NSNumber numberWithUnsignedShort:actual]; - } - va_end(v); - return obj; -} - -#define MASBoxValue(value) _MASBoxValue(@encode(__typeof__((value))), (value)) diff --git a/CoreNewFeatureVC/FrameWorks/Masonry/LIb/Masonry/MASViewAttribute.h b/CoreNewFeatureVC/FrameWorks/Masonry/LIb/Masonry/MASViewAttribute.h deleted file mode 100755 index f594f48..0000000 --- a/CoreNewFeatureVC/FrameWorks/Masonry/LIb/Masonry/MASViewAttribute.h +++ /dev/null @@ -1,39 +0,0 @@ -// -// MASAttribute.h -// Masonry -// -// Created by Jonas Budelmann on 21/07/13. -// Copyright (c) 2013 cloudling. All rights reserved. -// - -#import "MASUtilities.h" - -/** - * An immutable tuple which stores the view and the related NSLayoutAttribute. - * Describes part of either the left or right hand side of a constraint equation - */ -@interface MASViewAttribute : NSObject - -/** - * The view which the reciever relates to - */ -@property (nonatomic, weak, readonly) MAS_VIEW *view; - -/** - * The attribute which the reciever relates to - */ -@property (nonatomic, assign, readonly) NSLayoutAttribute layoutAttribute; - -/** - * The designated initializer. - */ -- (id)initWithView:(MAS_VIEW *)view layoutAttribute:(NSLayoutAttribute)layoutAttribute; - -/** - * Determine whether the layoutAttribute is a size attribute - * - * @return YES if layoutAttribute is equal to NSLayoutAttributeWidth or NSLayoutAttributeHeight - */ -- (BOOL)isSizeAttribute; - -@end diff --git a/CoreNewFeatureVC/FrameWorks/Masonry/LIb/Masonry/MASViewAttribute.m b/CoreNewFeatureVC/FrameWorks/Masonry/LIb/Masonry/MASViewAttribute.m deleted file mode 100755 index 1032826..0000000 --- a/CoreNewFeatureVC/FrameWorks/Masonry/LIb/Masonry/MASViewAttribute.m +++ /dev/null @@ -1,40 +0,0 @@ -// -// MASAttribute.m -// Masonry -// -// Created by Jonas Budelmann on 21/07/13. -// Copyright (c) 2013 cloudling. All rights reserved. -// - -#import "MASViewAttribute.h" - -@implementation MASViewAttribute - -- (id)initWithView:(MAS_VIEW *)view layoutAttribute:(NSLayoutAttribute)layoutAttribute { - self = [super init]; - if (!self) return nil; - - _view = view; - _layoutAttribute = layoutAttribute; - - return self; -} - -- (BOOL)isSizeAttribute { - return self.layoutAttribute == NSLayoutAttributeWidth - || self.layoutAttribute == NSLayoutAttributeHeight; -} - -- (BOOL)isEqual:(MASViewAttribute *)viewAttribute { - if ([viewAttribute isKindOfClass:self.class]) { - return self.view == viewAttribute.view - && self.layoutAttribute == viewAttribute.layoutAttribute; - } - return [super isEqual:viewAttribute]; -} - -- (NSUInteger)hash { - return MAS_NSUINTROTATE([self.view hash], MAS_NSUINT_BIT / 2) ^ self.layoutAttribute; -} - -@end diff --git a/CoreNewFeatureVC/FrameWorks/Masonry/LIb/Masonry/MASViewConstraint.h b/CoreNewFeatureVC/FrameWorks/Masonry/LIb/Masonry/MASViewConstraint.h deleted file mode 100755 index 5c78f7a..0000000 --- a/CoreNewFeatureVC/FrameWorks/Masonry/LIb/Masonry/MASViewConstraint.h +++ /dev/null @@ -1,48 +0,0 @@ -// -// MASConstraint.h -// Masonry -// -// Created by Jonas Budelmann on 20/07/13. -// Copyright (c) 2013 cloudling. All rights reserved. -// - -#import "MASViewAttribute.h" -#import "MASConstraint.h" -#import "MASLayoutConstraint.h" -#import "MASUtilities.h" - -/** - * A single constraint. - * Contains the attributes neccessary for creating a NSLayoutConstraint and adding it to the appropriate view - */ -@interface MASViewConstraint : MASConstraint - -/** - * First item/view and first attribute of the NSLayoutConstraint - */ -@property (nonatomic, strong, readonly) MASViewAttribute *firstViewAttribute; - -/** - * Second item/view and second attribute of the NSLayoutConstraint - */ -@property (nonatomic, strong, readonly) MASViewAttribute *secondViewAttribute; - -/** - * initialises the MASViewConstraint with the first part of the equation - * - * @param firstViewAttribute view.mas_left, view.mas_width etc. - * - * @return a new view constraint - */ -- (id)initWithFirstViewAttribute:(MASViewAttribute *)firstViewAttribute; - -/** - * Returns all MASViewConstraints installed with this view as a first item. - * - * @param view A view to retrieve constraints for. - * - * @return An array of MASViewConstraints. - */ -+ (NSArray *)installedConstraintsForView:(MAS_VIEW *)view; - -@end diff --git a/CoreNewFeatureVC/FrameWorks/Masonry/LIb/Masonry/MASViewConstraint.m b/CoreNewFeatureVC/FrameWorks/Masonry/LIb/Masonry/MASViewConstraint.m deleted file mode 100755 index 8e3d2d6..0000000 --- a/CoreNewFeatureVC/FrameWorks/Masonry/LIb/Masonry/MASViewConstraint.m +++ /dev/null @@ -1,396 +0,0 @@ -// -// MASConstraint.m -// Masonry -// -// Created by Jonas Budelmann on 20/07/13. -// Copyright (c) 2013 cloudling. All rights reserved. -// - -#import "MASViewConstraint.h" -#import "MASConstraint+Private.h" -#import "MASCompositeConstraint.h" -#import "MASLayoutConstraint.h" -#import "View+MASAdditions.h" -#import - -@interface MAS_VIEW (MASConstraints) - -@property (nonatomic, readonly) NSMutableSet *mas_installedConstraints; - -@end - -@implementation MAS_VIEW (MASConstraints) - -static char kInstalledConstraintsKey; - -- (NSMutableSet *)mas_installedConstraints { - NSMutableSet *constraints = objc_getAssociatedObject(self, &kInstalledConstraintsKey); - if (!constraints) { - constraints = [NSMutableSet set]; - objc_setAssociatedObject(self, &kInstalledConstraintsKey, constraints, OBJC_ASSOCIATION_RETAIN_NONATOMIC); - } - return constraints; -} - -@end - - -@interface MASViewConstraint () - -@property (nonatomic, strong, readwrite) MASViewAttribute *secondViewAttribute; -@property (nonatomic, weak) MAS_VIEW *installedView; -@property (nonatomic, weak) MASLayoutConstraint *layoutConstraint; -@property (nonatomic, assign) NSLayoutRelation layoutRelation; -@property (nonatomic, assign) MASLayoutPriority layoutPriority; -@property (nonatomic, assign) CGFloat layoutMultiplier; -@property (nonatomic, assign) CGFloat layoutConstant; -@property (nonatomic, assign) BOOL hasLayoutRelation; -@property (nonatomic, strong) id mas_key; -@property (nonatomic, assign) BOOL useAnimator; - -@end - -@implementation MASViewConstraint - -- (id)initWithFirstViewAttribute:(MASViewAttribute *)firstViewAttribute { - self = [super init]; - if (!self) return nil; - - _firstViewAttribute = firstViewAttribute; - self.layoutPriority = MASLayoutPriorityRequired; - self.layoutMultiplier = 1; - - return self; -} - -#pragma mark - NSCoping - -- (id)copyWithZone:(NSZone __unused *)zone { - MASViewConstraint *constraint = [[MASViewConstraint alloc] initWithFirstViewAttribute:self.firstViewAttribute]; - constraint.layoutConstant = self.layoutConstant; - constraint.layoutRelation = self.layoutRelation; - constraint.layoutPriority = self.layoutPriority; - constraint.layoutMultiplier = self.layoutMultiplier; - constraint.delegate = self.delegate; - return constraint; -} - -#pragma mark - Public - -+ (NSArray *)installedConstraintsForView:(MAS_VIEW *)view { - return [view.mas_installedConstraints allObjects]; -} - -#pragma mark - Private - -- (void)setLayoutConstant:(CGFloat)layoutConstant { - _layoutConstant = layoutConstant; - -#if TARGET_OS_MAC && !TARGET_OS_IPHONE - if (self.useAnimator) { - [self.layoutConstraint.animator setConstant:layoutConstant]; - } else { - self.layoutConstraint.constant = layoutConstant; - } -#else - self.layoutConstraint.constant = layoutConstant; -#endif -} - -- (void)setLayoutRelation:(NSLayoutRelation)layoutRelation { - _layoutRelation = layoutRelation; - self.hasLayoutRelation = YES; -} - -- (BOOL)supportsActiveProperty { - return [self.layoutConstraint respondsToSelector:@selector(isActive)]; -} - -- (BOOL)isActive { - BOOL active = YES; - if ([self supportsActiveProperty]) { - active = [self.layoutConstraint isActive]; - } - - return active; -} - -- (BOOL)hasBeenInstalled { - return (self.layoutConstraint != nil) && [self isActive]; -} - -- (void)setSecondViewAttribute:(id)secondViewAttribute { - if ([secondViewAttribute isKindOfClass:NSValue.class]) { - [self setLayoutConstantWithValue:secondViewAttribute]; - } else if ([secondViewAttribute isKindOfClass:MAS_VIEW.class]) { - _secondViewAttribute = [[MASViewAttribute alloc] initWithView:secondViewAttribute layoutAttribute:self.firstViewAttribute.layoutAttribute]; - } else if ([secondViewAttribute isKindOfClass:MASViewAttribute.class]) { - _secondViewAttribute = secondViewAttribute; - } else { - NSAssert(NO, @"attempting to add unsupported attribute: %@", secondViewAttribute); - } -} - -#pragma mark - NSLayoutConstraint multiplier proxies - -- (MASConstraint * (^)(CGFloat))multipliedBy { - return ^id(CGFloat multiplier) { - NSAssert(!self.hasBeenInstalled, - @"Cannot modify constraint multiplier after it has been installed"); - - self.layoutMultiplier = multiplier; - return self; - }; -} - - -- (MASConstraint * (^)(CGFloat))dividedBy { - return ^id(CGFloat divider) { - NSAssert(!self.hasBeenInstalled, - @"Cannot modify constraint multiplier after it has been installed"); - - self.layoutMultiplier = 1.0/divider; - return self; - }; -} - -#pragma mark - MASLayoutPriority proxy - -- (MASConstraint * (^)(MASLayoutPriority))priority { - return ^id(MASLayoutPriority priority) { - NSAssert(!self.hasBeenInstalled, - @"Cannot modify constraint priority after it has been installed"); - - self.layoutPriority = priority; - return self; - }; -} - -#pragma mark - NSLayoutRelation proxy - -- (MASConstraint * (^)(id, NSLayoutRelation))equalToWithRelation { - return ^id(id attribute, NSLayoutRelation relation) { - if ([attribute isKindOfClass:NSArray.class]) { - NSAssert(!self.hasLayoutRelation, @"Redefinition of constraint relation"); - NSMutableArray *children = NSMutableArray.new; - for (id attr in attribute) { - MASViewConstraint *viewConstraint = [self copy]; - viewConstraint.secondViewAttribute = attr; - [children addObject:viewConstraint]; - } - MASCompositeConstraint *compositeConstraint = [[MASCompositeConstraint alloc] initWithChildren:children]; - compositeConstraint.delegate = self.delegate; - [self.delegate constraint:self shouldBeReplacedWithConstraint:compositeConstraint]; - return compositeConstraint; - } else { - NSAssert(!self.hasLayoutRelation || self.layoutRelation == relation && [attribute isKindOfClass:NSValue.class], @"Redefinition of constraint relation"); - self.layoutRelation = relation; - self.secondViewAttribute = attribute; - return self; - } - }; -} - -#pragma mark - Semantic properties - -- (MASConstraint *)with { - return self; -} - -- (MASConstraint *)and { - return self; -} - -#pragma mark - attribute chaining - -- (MASConstraint *)addConstraintWithLayoutAttribute:(NSLayoutAttribute)layoutAttribute { - NSAssert(!self.hasLayoutRelation, @"Attributes should be chained before defining the constraint relation"); - - return [self.delegate constraint:self addConstraintWithLayoutAttribute:layoutAttribute]; -} - -#pragma mark - Animator proxy - -#if TARGET_OS_MAC && !TARGET_OS_IPHONE - -- (MASConstraint *)animator { - self.useAnimator = YES; - return self; -} - -#endif - -#pragma mark - debug helpers - -- (MASConstraint * (^)(id))key { - return ^id(id key) { - self.mas_key = key; - return self; - }; -} - -#pragma mark - NSLayoutConstraint constant setters - -- (void)setInsets:(MASEdgeInsets)insets { - NSLayoutAttribute layoutAttribute = self.firstViewAttribute.layoutAttribute; - switch (layoutAttribute) { - case NSLayoutAttributeLeft: - case NSLayoutAttributeLeading: - self.layoutConstant = insets.left; - break; - case NSLayoutAttributeTop: - self.layoutConstant = insets.top; - break; - case NSLayoutAttributeBottom: - self.layoutConstant = -insets.bottom; - break; - case NSLayoutAttributeRight: - case NSLayoutAttributeTrailing: - self.layoutConstant = -insets.right; - break; - default: - break; - } -} - -- (void)setOffset:(CGFloat)offset { - self.layoutConstant = offset; -} - -- (void)setSizeOffset:(CGSize)sizeOffset { - NSLayoutAttribute layoutAttribute = self.firstViewAttribute.layoutAttribute; - switch (layoutAttribute) { - case NSLayoutAttributeWidth: - self.layoutConstant = sizeOffset.width; - break; - case NSLayoutAttributeHeight: - self.layoutConstant = sizeOffset.height; - break; - default: - break; - } -} - -- (void)setCenterOffset:(CGPoint)centerOffset { - NSLayoutAttribute layoutAttribute = self.firstViewAttribute.layoutAttribute; - switch (layoutAttribute) { - case NSLayoutAttributeCenterX: - self.layoutConstant = centerOffset.x; - break; - case NSLayoutAttributeCenterY: - self.layoutConstant = centerOffset.y; - break; - default: - break; - } -} - -#pragma mark - MASConstraint - -- (void)activate { - if ([self supportsActiveProperty] && self.layoutConstraint) { - if (self.hasBeenInstalled) { - return; - } - self.layoutConstraint.active = YES; - [self.firstViewAttribute.view.mas_installedConstraints addObject:self]; - } else { - [self install]; - } -} - -- (void)deactivate { - if ([self supportsActiveProperty]) { - self.layoutConstraint.active = NO; - [self.firstViewAttribute.view.mas_installedConstraints removeObject:self]; - } else { - [self uninstall]; - } -} - -- (void)install { - if (self.hasBeenInstalled) { - return; - } - - MAS_VIEW *firstLayoutItem = self.firstViewAttribute.view; - - NSLayoutAttribute firstLayoutAttribute = self.firstViewAttribute.layoutAttribute; - MAS_VIEW *secondLayoutItem = self.secondViewAttribute.view; - NSLayoutAttribute secondLayoutAttribute = self.secondViewAttribute.layoutAttribute; - - // alignment attributes must have a secondViewAttribute - // therefore we assume that is refering to superview - // eg make.left.equalTo(@10) - if (!self.firstViewAttribute.isSizeAttribute && !self.secondViewAttribute) { - secondLayoutItem = firstLayoutItem.superview; - secondLayoutAttribute = firstLayoutAttribute; - } - - MASLayoutConstraint *layoutConstraint - = [MASLayoutConstraint constraintWithItem:firstLayoutItem - attribute:firstLayoutAttribute - relatedBy:self.layoutRelation - toItem:secondLayoutItem - attribute:secondLayoutAttribute - multiplier:self.layoutMultiplier - constant:self.layoutConstant]; - - layoutConstraint.priority = self.layoutPriority; - layoutConstraint.mas_key = self.mas_key; - - if (secondLayoutItem) { - MAS_VIEW *closestCommonSuperview = [firstLayoutItem mas_closestCommonSuperview:secondLayoutItem]; - NSAssert(closestCommonSuperview, - @"couldn't find a common superview for %@ and %@", - firstLayoutItem, secondLayoutItem); - self.installedView = closestCommonSuperview; - } else { - self.installedView = firstLayoutItem; - } - - - MASLayoutConstraint *existingConstraint = nil; - if (self.updateExisting) { - existingConstraint = [self layoutConstraintSimilarTo:layoutConstraint]; - } - if (existingConstraint) { - // just update the constant - existingConstraint.constant = layoutConstraint.constant; - self.layoutConstraint = existingConstraint; - } else { - [self.installedView addConstraint:layoutConstraint]; - self.layoutConstraint = layoutConstraint; - [firstLayoutItem.mas_installedConstraints addObject:self]; - } -} - -- (MASLayoutConstraint *)layoutConstraintSimilarTo:(MASLayoutConstraint *)layoutConstraint { - // check if any constraints are the same apart from the only mutable property constant - - // go through constraints in reverse as we do not want to match auto-resizing or interface builder constraints - // and they are likely to be added first. - for (NSLayoutConstraint *existingConstraint in self.installedView.constraints.reverseObjectEnumerator) { - if (![existingConstraint isKindOfClass:MASLayoutConstraint.class]) continue; - if (existingConstraint.firstItem != layoutConstraint.firstItem) continue; - if (existingConstraint.secondItem != layoutConstraint.secondItem) continue; - if (existingConstraint.firstAttribute != layoutConstraint.firstAttribute) continue; - if (existingConstraint.secondAttribute != layoutConstraint.secondAttribute) continue; - if (existingConstraint.relation != layoutConstraint.relation) continue; - if (existingConstraint.multiplier != layoutConstraint.multiplier) continue; - if (existingConstraint.priority != layoutConstraint.priority) continue; - - return (id)existingConstraint; - } - return nil; -} - -- (void)uninstall { - [self.installedView removeConstraint:self.layoutConstraint]; - self.layoutConstraint = nil; - self.installedView = nil; - - [self.firstViewAttribute.view.mas_installedConstraints removeObject:self]; -} - -@end diff --git a/CoreNewFeatureVC/FrameWorks/Masonry/LIb/Masonry/Masonry.h b/CoreNewFeatureVC/FrameWorks/Masonry/LIb/Masonry/Masonry.h deleted file mode 100755 index 168811a..0000000 --- a/CoreNewFeatureVC/FrameWorks/Masonry/LIb/Masonry/Masonry.h +++ /dev/null @@ -1,28 +0,0 @@ -// -// Masonry.h -// Masonry -// -// Created by Jonas Budelmann on 20/07/13. -// Copyright (c) 2013 cloudling. All rights reserved. -// - -#import - -//! Project version number for Masonry. -FOUNDATION_EXPORT double MasonryVersionNumber; - -//! Project version string for Masonry. -FOUNDATION_EXPORT const unsigned char MasonryVersionString[]; - -#import "MASUtilities.h" -#import "View+MASAdditions.h" -#import "View+MASShorthandAdditions.h" -#import "NSArray+MASAdditions.h" -#import "NSArray+MASShorthandAdditions.h" -#import "MASConstraint.h" -#import "MASCompositeConstraint.h" -#import "MASViewAttribute.h" -#import "MASViewConstraint.h" -#import "MASConstraintMaker.h" -#import "MASLayoutConstraint.h" -#import "NSLayoutConstraint+MASDebugAdditions.h" diff --git a/CoreNewFeatureVC/FrameWorks/Masonry/LIb/Masonry/NSArray+MASAdditions.h b/CoreNewFeatureVC/FrameWorks/Masonry/LIb/Masonry/NSArray+MASAdditions.h deleted file mode 100755 index 189d51f..0000000 --- a/CoreNewFeatureVC/FrameWorks/Masonry/LIb/Masonry/NSArray+MASAdditions.h +++ /dev/null @@ -1,47 +0,0 @@ -// -// NSArray+MASAdditions.h -// -// -// Created by Daniel Hammond on 11/26/13. -// -// - -#import "MASUtilities.h" -#import "MASConstraintMaker.h" -#import "MASViewAttribute.h" - -@interface NSArray (MASAdditions) - -/** - * Creates a MASConstraintMaker with each view in the callee. - * Any constraints defined are added to the view or the appropriate superview once the block has finished executing on each view - * - * @param block scope within which you can build up the constraints which you wish to apply to each view. - * - * @return Array of created MASConstraints - */ -- (NSArray *)mas_makeConstraints:(void(^)(MASConstraintMaker *make))block; - -/** - * Creates a MASConstraintMaker with each view in the callee. - * Any constraints defined are added to each view or the appropriate superview once the block has finished executing on each view. - * If an existing constraint exists then it will be updated instead. - * - * @param block scope within which you can build up the constraints which you wish to apply to each view. - * - * @return Array of created/updated MASConstraints - */ -- (NSArray *)mas_updateConstraints:(void(^)(MASConstraintMaker *make))block; - -/** - * Creates a MASConstraintMaker with each view in the callee. - * Any constraints defined are added to each view or the appropriate superview once the block has finished executing on each view. - * All constraints previously installed for the views will be removed. - * - * @param block scope within which you can build up the constraints which you wish to apply to each view. - * - * @return Array of created/updated MASConstraints - */ -- (NSArray *)mas_remakeConstraints:(void(^)(MASConstraintMaker *make))block; - -@end diff --git a/CoreNewFeatureVC/FrameWorks/Masonry/LIb/Masonry/NSArray+MASAdditions.m b/CoreNewFeatureVC/FrameWorks/Masonry/LIb/Masonry/NSArray+MASAdditions.m deleted file mode 100755 index dbbe671..0000000 --- a/CoreNewFeatureVC/FrameWorks/Masonry/LIb/Masonry/NSArray+MASAdditions.m +++ /dev/null @@ -1,41 +0,0 @@ -// -// NSArray+MASAdditions.m -// -// -// Created by Daniel Hammond on 11/26/13. -// -// - -#import "NSArray+MASAdditions.h" -#import "View+MASAdditions.h" - -@implementation NSArray (MASAdditions) - -- (NSArray *)mas_makeConstraints:(void(^)(MASConstraintMaker *make))block { - NSMutableArray *constraints = [NSMutableArray array]; - for (MAS_VIEW *view in self) { - NSAssert([view isKindOfClass:[MAS_VIEW class]], @"All objects in the array must be views"); - [constraints addObjectsFromArray:[view mas_makeConstraints:block]]; - } - return constraints; -} - -- (NSArray *)mas_updateConstraints:(void(^)(MASConstraintMaker *make))block { - NSMutableArray *constraints = [NSMutableArray array]; - for (MAS_VIEW *view in self) { - NSAssert([view isKindOfClass:[MAS_VIEW class]], @"All objects in the array must be views"); - [constraints addObjectsFromArray:[view mas_updateConstraints:block]]; - } - return constraints; -} - -- (NSArray *)mas_remakeConstraints:(void(^)(MASConstraintMaker *make))block { - NSMutableArray *constraints = [NSMutableArray array]; - for (MAS_VIEW *view in self) { - NSAssert([view isKindOfClass:[MAS_VIEW class]], @"All objects in the array must be views"); - [constraints addObjectsFromArray:[view mas_remakeConstraints:block]]; - } - return constraints; -} - -@end diff --git a/CoreNewFeatureVC/FrameWorks/Masonry/LIb/Masonry/NSArray+MASShorthandAdditions.h b/CoreNewFeatureVC/FrameWorks/Masonry/LIb/Masonry/NSArray+MASShorthandAdditions.h deleted file mode 100755 index 8b47369..0000000 --- a/CoreNewFeatureVC/FrameWorks/Masonry/LIb/Masonry/NSArray+MASShorthandAdditions.h +++ /dev/null @@ -1,41 +0,0 @@ -// -// NSArray+MASShorthandAdditions.h -// Masonry -// -// Created by Jonas Budelmann on 22/07/13. -// Copyright (c) 2013 Jonas Budelmann. All rights reserved. -// - -#import "NSArray+MASAdditions.h" - -#ifdef MAS_SHORTHAND - -/** - * Shorthand array additions without the 'mas_' prefixes, - * only enabled if MAS_SHORTHAND is defined - */ -@interface NSArray (MASShorthandAdditions) - -- (NSArray *)makeConstraints:(void(^)(MASConstraintMaker *make))block; -- (NSArray *)updateConstraints:(void(^)(MASConstraintMaker *make))block; -- (NSArray *)remakeConstraints:(void(^)(MASConstraintMaker *make))block; - -@end - -@implementation NSArray (MASShorthandAdditions) - -- (NSArray *)makeConstraints:(void(^)(MASConstraintMaker *))block { - return [self mas_makeConstraints:block]; -} - -- (NSArray *)updateConstraints:(void(^)(MASConstraintMaker *))block { - return [self mas_updateConstraints:block]; -} - -- (NSArray *)remakeConstraints:(void(^)(MASConstraintMaker *))block { - return [self mas_remakeConstraints:block]; -} - -@end - -#endif diff --git a/CoreNewFeatureVC/FrameWorks/Masonry/LIb/Masonry/NSLayoutConstraint+MASDebugAdditions.h b/CoreNewFeatureVC/FrameWorks/Masonry/LIb/Masonry/NSLayoutConstraint+MASDebugAdditions.h deleted file mode 100755 index 1279b4f..0000000 --- a/CoreNewFeatureVC/FrameWorks/Masonry/LIb/Masonry/NSLayoutConstraint+MASDebugAdditions.h +++ /dev/null @@ -1,16 +0,0 @@ -// -// NSLayoutConstraint+MASDebugAdditions.h -// Masonry -// -// Created by Jonas Budelmann on 3/08/13. -// Copyright (c) 2013 Jonas Budelmann. All rights reserved. -// - -#import "MASUtilities.h" - -/** - * makes debug and log output of NSLayoutConstraints more readable - */ -@interface NSLayoutConstraint (MASDebugAdditions) - -@end diff --git a/CoreNewFeatureVC/FrameWorks/Masonry/LIb/Masonry/NSLayoutConstraint+MASDebugAdditions.m b/CoreNewFeatureVC/FrameWorks/Masonry/LIb/Masonry/NSLayoutConstraint+MASDebugAdditions.m deleted file mode 100755 index 3d10ac2..0000000 --- a/CoreNewFeatureVC/FrameWorks/Masonry/LIb/Masonry/NSLayoutConstraint+MASDebugAdditions.m +++ /dev/null @@ -1,141 +0,0 @@ -// -// NSLayoutConstraint+MASDebugAdditions.m -// Masonry -// -// Created by Jonas Budelmann on 3/08/13. -// Copyright (c) 2013 Jonas Budelmann. All rights reserved. -// - -#import "NSLayoutConstraint+MASDebugAdditions.h" -#import "MASConstraint.h" -#import "MASLayoutConstraint.h" - -@implementation NSLayoutConstraint (MASDebugAdditions) - -#pragma mark - description maps - -+ (NSDictionary *)layoutRelationDescriptionsByValue { - static dispatch_once_t once; - static NSDictionary *descriptionMap; - dispatch_once(&once, ^{ - descriptionMap = @{ - @(NSLayoutRelationEqual) : @"==", - @(NSLayoutRelationGreaterThanOrEqual) : @">=", - @(NSLayoutRelationLessThanOrEqual) : @"<=", - }; - }); - return descriptionMap; -} - -+ (NSDictionary *)layoutAttributeDescriptionsByValue { - static dispatch_once_t once; - static NSDictionary *descriptionMap; - dispatch_once(&once, ^{ - descriptionMap = @{ - @(NSLayoutAttributeTop) : @"top", - @(NSLayoutAttributeLeft) : @"left", - @(NSLayoutAttributeBottom) : @"bottom", - @(NSLayoutAttributeRight) : @"right", - @(NSLayoutAttributeLeading) : @"leading", - @(NSLayoutAttributeTrailing) : @"trailing", - @(NSLayoutAttributeWidth) : @"width", - @(NSLayoutAttributeHeight) : @"height", - @(NSLayoutAttributeCenterX) : @"centerX", - @(NSLayoutAttributeCenterY) : @"centerY", - @(NSLayoutAttributeBaseline) : @"baseline", - -#if TARGET_OS_IPHONE - @(NSLayoutAttributeLeftMargin) : @"leftMargin", - @(NSLayoutAttributeRightMargin) : @"rightMargin", - @(NSLayoutAttributeTopMargin) : @"topMargin", - @(NSLayoutAttributeBottomMargin) : @"bottomMargin", - @(NSLayoutAttributeLeadingMargin) : @"leadingMargin", - @(NSLayoutAttributeTrailingMargin) : @"trailingMargin", - @(NSLayoutAttributeCenterXWithinMargins) : @"centerXWithinMargins", - @(NSLayoutAttributeCenterYWithinMargins) : @"centerYWithinMargins", -#endif - - }; - - }); - return descriptionMap; -} - - -+ (NSDictionary *)layoutPriorityDescriptionsByValue { - static dispatch_once_t once; - static NSDictionary *descriptionMap; - dispatch_once(&once, ^{ -#if TARGET_OS_IPHONE - descriptionMap = @{ - @(MASLayoutPriorityDefaultHigh) : @"high", - @(MASLayoutPriorityDefaultLow) : @"low", - @(MASLayoutPriorityDefaultMedium) : @"medium", - @(MASLayoutPriorityRequired) : @"required", - @(MASLayoutPriorityFittingSizeLevel) : @"fitting size", - }; -#elif TARGET_OS_MAC - descriptionMap = @{ - @(MASLayoutPriorityDefaultHigh) : @"high", - @(MASLayoutPriorityDragThatCanResizeWindow) : @"drag can resize window", - @(MASLayoutPriorityDefaultMedium) : @"medium", - @(MASLayoutPriorityWindowSizeStayPut) : @"window size stay put", - @(MASLayoutPriorityDragThatCannotResizeWindow) : @"drag cannot resize window", - @(MASLayoutPriorityDefaultLow) : @"low", - @(MASLayoutPriorityFittingSizeCompression) : @"fitting size", - @(MASLayoutPriorityRequired) : @"required", - }; -#endif - }); - return descriptionMap; -} - -#pragma mark - description override - -+ (NSString *)descriptionForObject:(id)obj { - if ([obj respondsToSelector:@selector(mas_key)] && [obj mas_key]) { - return [NSString stringWithFormat:@"%@:%@", [obj class], [obj mas_key]]; - } - return [NSString stringWithFormat:@"%@:%p", [obj class], obj]; -} - -- (NSString *)description { - NSMutableString *description = [[NSMutableString alloc] initWithString:@"<"]; - - [description appendString:[self.class descriptionForObject:self]]; - - [description appendFormat:@" %@", [self.class descriptionForObject:self.firstItem]]; - if (self.firstAttribute != NSLayoutAttributeNotAnAttribute) { - [description appendFormat:@".%@", [self.class.layoutAttributeDescriptionsByValue objectForKey:@(self.firstAttribute)]]; - } - - [description appendFormat:@" %@", [self.class.layoutRelationDescriptionsByValue objectForKey:@(self.relation)]]; - - if (self.secondItem) { - [description appendFormat:@" %@", [self.class descriptionForObject:self.secondItem]]; - } - if (self.secondAttribute != NSLayoutAttributeNotAnAttribute) { - [description appendFormat:@".%@", [self.class.layoutAttributeDescriptionsByValue objectForKey:@(self.secondAttribute)]]; - } - - if (self.multiplier != 1) { - [description appendFormat:@" * %g", self.multiplier]; - } - - if (self.secondAttribute == NSLayoutAttributeNotAnAttribute) { - [description appendFormat:@" %g", self.constant]; - } else { - if (self.constant) { - [description appendFormat:@" %@ %g", (self.constant < 0 ? @"-" : @"+"), ABS(self.constant)]; - } - } - - if (self.priority != MASLayoutPriorityRequired) { - [description appendFormat:@" ^%@", [self.class.layoutPriorityDescriptionsByValue objectForKey:@(self.priority)] ?: [NSNumber numberWithDouble:self.priority]]; - } - - [description appendString:@">"]; - return description; -} - -@end diff --git a/CoreNewFeatureVC/FrameWorks/Masonry/LIb/Masonry/View+MASAdditions.h b/CoreNewFeatureVC/FrameWorks/Masonry/LIb/Masonry/View+MASAdditions.h deleted file mode 100755 index 94e3050..0000000 --- a/CoreNewFeatureVC/FrameWorks/Masonry/LIb/Masonry/View+MASAdditions.h +++ /dev/null @@ -1,94 +0,0 @@ -// -// UIView+MASAdditions.h -// Masonry -// -// Created by Jonas Budelmann on 20/07/13. -// Copyright (c) 2013 cloudling. All rights reserved. -// - -#import "MASUtilities.h" -#import "MASConstraintMaker.h" -#import "MASViewAttribute.h" - -/** - * Provides constraint maker block - * and convience methods for creating MASViewAttribute which are view + NSLayoutAttribute pairs - */ -@interface MAS_VIEW (MASAdditions) - -/** - * following properties return a new MASViewAttribute with current view and appropriate NSLayoutAttribute - */ -@property (nonatomic, strong, readonly) MASViewAttribute *mas_left; -@property (nonatomic, strong, readonly) MASViewAttribute *mas_top; -@property (nonatomic, strong, readonly) MASViewAttribute *mas_right; -@property (nonatomic, strong, readonly) MASViewAttribute *mas_bottom; -@property (nonatomic, strong, readonly) MASViewAttribute *mas_leading; -@property (nonatomic, strong, readonly) MASViewAttribute *mas_trailing; -@property (nonatomic, strong, readonly) MASViewAttribute *mas_width; -@property (nonatomic, strong, readonly) MASViewAttribute *mas_height; -@property (nonatomic, strong, readonly) MASViewAttribute *mas_centerX; -@property (nonatomic, strong, readonly) MASViewAttribute *mas_centerY; -@property (nonatomic, strong, readonly) MASViewAttribute *mas_baseline; -@property (nonatomic, strong, readonly) MASViewAttribute *(^mas_attribute)(NSLayoutAttribute attr); - -#if TARGET_OS_IPHONE - -@property (nonatomic, strong, readonly) MASViewAttribute *mas_leftMargin; -@property (nonatomic, strong, readonly) MASViewAttribute *mas_rightMargin; -@property (nonatomic, strong, readonly) MASViewAttribute *mas_topMargin; -@property (nonatomic, strong, readonly) MASViewAttribute *mas_bottomMargin; -@property (nonatomic, strong, readonly) MASViewAttribute *mas_leadingMargin; -@property (nonatomic, strong, readonly) MASViewAttribute *mas_trailingMargin; -@property (nonatomic, strong, readonly) MASViewAttribute *mas_centerXWithinMargins; -@property (nonatomic, strong, readonly) MASViewAttribute *mas_centerYWithinMargins; - -#endif - -/** - * a key to associate with this view - */ -@property (nonatomic, strong) id mas_key; - -/** - * Finds the closest common superview between this view and another view - * - * @param view other view - * - * @return returns nil if common superview could not be found - */ -- (instancetype)mas_closestCommonSuperview:(MAS_VIEW *)view; - -/** - * Creates a MASConstraintMaker with the callee view. - * Any constraints defined are added to the view or the appropriate superview once the block has finished executing - * - * @param block scope within which you can build up the constraints which you wish to apply to the view. - * - * @return Array of created MASConstraints - */ -- (NSArray *)mas_makeConstraints:(void(^)(MASConstraintMaker *make))block; - -/** - * Creates a MASConstraintMaker with the callee view. - * Any constraints defined are added to the view or the appropriate superview once the block has finished executing. - * If an existing constraint exists then it will be updated instead. - * - * @param block scope within which you can build up the constraints which you wish to apply to the view. - * - * @return Array of created/updated MASConstraints - */ -- (NSArray *)mas_updateConstraints:(void(^)(MASConstraintMaker *make))block; - -/** - * Creates a MASConstraintMaker with the callee view. - * Any constraints defined are added to the view or the appropriate superview once the block has finished executing. - * All constraints previously installed for the view will be removed. - * - * @param block scope within which you can build up the constraints which you wish to apply to the view. - * - * @return Array of created/updated MASConstraints - */ -- (NSArray *)mas_remakeConstraints:(void(^)(MASConstraintMaker *make))block; - -@end diff --git a/CoreNewFeatureVC/FrameWorks/Masonry/LIb/Masonry/View+MASAdditions.m b/CoreNewFeatureVC/FrameWorks/Masonry/LIb/Masonry/View+MASAdditions.m deleted file mode 100755 index acfaa52..0000000 --- a/CoreNewFeatureVC/FrameWorks/Masonry/LIb/Masonry/View+MASAdditions.m +++ /dev/null @@ -1,155 +0,0 @@ -// -// UIView+MASAdditions.m -// Masonry -// -// Created by Jonas Budelmann on 20/07/13. -// Copyright (c) 2013 cloudling. All rights reserved. -// - -#import "View+MASAdditions.h" -#import - -@implementation MAS_VIEW (MASAdditions) - -- (NSArray *)mas_makeConstraints:(void(^)(MASConstraintMaker *))block { - self.translatesAutoresizingMaskIntoConstraints = NO; - MASConstraintMaker *constraintMaker = [[MASConstraintMaker alloc] initWithView:self]; - block(constraintMaker); - return [constraintMaker install]; -} - -- (NSArray *)mas_updateConstraints:(void(^)(MASConstraintMaker *))block { - self.translatesAutoresizingMaskIntoConstraints = NO; - MASConstraintMaker *constraintMaker = [[MASConstraintMaker alloc] initWithView:self]; - constraintMaker.updateExisting = YES; - block(constraintMaker); - return [constraintMaker install]; -} - -- (NSArray *)mas_remakeConstraints:(void(^)(MASConstraintMaker *make))block { - self.translatesAutoresizingMaskIntoConstraints = NO; - MASConstraintMaker *constraintMaker = [[MASConstraintMaker alloc] initWithView:self]; - constraintMaker.removeExisting = YES; - block(constraintMaker); - return [constraintMaker install]; -} - -#pragma mark - NSLayoutAttribute properties - -- (MASViewAttribute *)mas_left { - return [[MASViewAttribute alloc] initWithView:self layoutAttribute:NSLayoutAttributeLeft]; -} - -- (MASViewAttribute *)mas_top { - return [[MASViewAttribute alloc] initWithView:self layoutAttribute:NSLayoutAttributeTop]; -} - -- (MASViewAttribute *)mas_right { - return [[MASViewAttribute alloc] initWithView:self layoutAttribute:NSLayoutAttributeRight]; -} - -- (MASViewAttribute *)mas_bottom { - return [[MASViewAttribute alloc] initWithView:self layoutAttribute:NSLayoutAttributeBottom]; -} - -- (MASViewAttribute *)mas_leading { - return [[MASViewAttribute alloc] initWithView:self layoutAttribute:NSLayoutAttributeLeading]; -} - -- (MASViewAttribute *)mas_trailing { - return [[MASViewAttribute alloc] initWithView:self layoutAttribute:NSLayoutAttributeTrailing]; -} - -- (MASViewAttribute *)mas_width { - return [[MASViewAttribute alloc] initWithView:self layoutAttribute:NSLayoutAttributeWidth]; -} - -- (MASViewAttribute *)mas_height { - return [[MASViewAttribute alloc] initWithView:self layoutAttribute:NSLayoutAttributeHeight]; -} - -- (MASViewAttribute *)mas_centerX { - return [[MASViewAttribute alloc] initWithView:self layoutAttribute:NSLayoutAttributeCenterX]; -} - -- (MASViewAttribute *)mas_centerY { - return [[MASViewAttribute alloc] initWithView:self layoutAttribute:NSLayoutAttributeCenterY]; -} - -- (MASViewAttribute *)mas_baseline { - return [[MASViewAttribute alloc] initWithView:self layoutAttribute:NSLayoutAttributeBaseline]; -} - -- (MASViewAttribute *(^)(NSLayoutAttribute))mas_attribute -{ - return ^(NSLayoutAttribute attr) { - return [[MASViewAttribute alloc] initWithView:self layoutAttribute:attr]; - }; -} - -#if TARGET_OS_IPHONE - -- (MASViewAttribute *)mas_leftMargin { - return [[MASViewAttribute alloc] initWithView:self layoutAttribute:NSLayoutAttributeLeftMargin]; -} - -- (MASViewAttribute *)mas_rightMargin { - return [[MASViewAttribute alloc] initWithView:self layoutAttribute:NSLayoutAttributeRightMargin]; -} - -- (MASViewAttribute *)mas_topMargin { - return [[MASViewAttribute alloc] initWithView:self layoutAttribute:NSLayoutAttributeTopMargin]; -} - -- (MASViewAttribute *)mas_bottomMargin { - return [[MASViewAttribute alloc] initWithView:self layoutAttribute:NSLayoutAttributeBottomMargin]; -} - -- (MASViewAttribute *)mas_leadingMargin { - return [[MASViewAttribute alloc] initWithView:self layoutAttribute:NSLayoutAttributeLeadingMargin]; -} - -- (MASViewAttribute *)mas_trailingMargin { - return [[MASViewAttribute alloc] initWithView:self layoutAttribute:NSLayoutAttributeTrailingMargin]; -} - -- (MASViewAttribute *)mas_centerXWithinMargins { - return [[MASViewAttribute alloc] initWithView:self layoutAttribute:NSLayoutAttributeCenterXWithinMargins]; -} - -- (MASViewAttribute *)mas_centerYWithinMargins { - return [[MASViewAttribute alloc] initWithView:self layoutAttribute:NSLayoutAttributeCenterYWithinMargins]; -} - -#endif - -#pragma mark - associated properties - -- (id)mas_key { - return objc_getAssociatedObject(self, @selector(mas_key)); -} - -- (void)setMas_key:(id)key { - objc_setAssociatedObject(self, @selector(mas_key), key, OBJC_ASSOCIATION_RETAIN_NONATOMIC); -} - -#pragma mark - heirachy - -- (instancetype)mas_closestCommonSuperview:(MAS_VIEW *)view { - MAS_VIEW *closestCommonSuperview = nil; - - MAS_VIEW *secondViewSuperview = view; - while (!closestCommonSuperview && secondViewSuperview) { - MAS_VIEW *firstViewSuperview = self; - while (!closestCommonSuperview && firstViewSuperview) { - if (secondViewSuperview == firstViewSuperview) { - closestCommonSuperview = secondViewSuperview; - } - firstViewSuperview = firstViewSuperview.superview; - } - secondViewSuperview = secondViewSuperview.superview; - } - return closestCommonSuperview; -} - -@end diff --git a/CoreNewFeatureVC/FrameWorks/Masonry/LIb/Masonry/View+MASShorthandAdditions.h b/CoreNewFeatureVC/FrameWorks/Masonry/LIb/Masonry/View+MASShorthandAdditions.h deleted file mode 100755 index 5553912..0000000 --- a/CoreNewFeatureVC/FrameWorks/Masonry/LIb/Masonry/View+MASShorthandAdditions.h +++ /dev/null @@ -1,101 +0,0 @@ -// -// UIView+MASShorthandAdditions.h -// Masonry -// -// Created by Jonas Budelmann on 22/07/13. -// Copyright (c) 2013 Jonas Budelmann. All rights reserved. -// - -#import "View+MASAdditions.h" - -#ifdef MAS_SHORTHAND - -/** - * Shorthand view additions without the 'mas_' prefixes, - * only enabled if MAS_SHORTHAND is defined - */ -@interface MAS_VIEW (MASShorthandAdditions) - -@property (nonatomic, strong, readonly) MASViewAttribute *left; -@property (nonatomic, strong, readonly) MASViewAttribute *top; -@property (nonatomic, strong, readonly) MASViewAttribute *right; -@property (nonatomic, strong, readonly) MASViewAttribute *bottom; -@property (nonatomic, strong, readonly) MASViewAttribute *leading; -@property (nonatomic, strong, readonly) MASViewAttribute *trailing; -@property (nonatomic, strong, readonly) MASViewAttribute *width; -@property (nonatomic, strong, readonly) MASViewAttribute *height; -@property (nonatomic, strong, readonly) MASViewAttribute *centerX; -@property (nonatomic, strong, readonly) MASViewAttribute *centerY; -@property (nonatomic, strong, readonly) MASViewAttribute *baseline; -@property (nonatomic, strong, readonly) MASViewAttribute *(^attribute)(NSLayoutAttribute attr); - -#if TARGET_OS_IPHONE - -@property (nonatomic, strong, readonly) MASViewAttribute *leftMargin; -@property (nonatomic, strong, readonly) MASViewAttribute *rightMargin; -@property (nonatomic, strong, readonly) MASViewAttribute *topMargin; -@property (nonatomic, strong, readonly) MASViewAttribute *bottomMargin; -@property (nonatomic, strong, readonly) MASViewAttribute *leadingMargin; -@property (nonatomic, strong, readonly) MASViewAttribute *trailingMargin; -@property (nonatomic, strong, readonly) MASViewAttribute *centerXWithinMargins; -@property (nonatomic, strong, readonly) MASViewAttribute *centerYWithinMargins; - -#endif - -- (NSArray *)makeConstraints:(void(^)(MASConstraintMaker *make))block; -- (NSArray *)updateConstraints:(void(^)(MASConstraintMaker *make))block; -- (NSArray *)remakeConstraints:(void(^)(MASConstraintMaker *make))block; - -@end - -#define MAS_ATTR_FORWARD(attr) \ -- (MASViewAttribute *)attr { \ - return [self mas_##attr]; \ -} - -@implementation MAS_VIEW (MASShorthandAdditions) - -MAS_ATTR_FORWARD(top); -MAS_ATTR_FORWARD(left); -MAS_ATTR_FORWARD(bottom); -MAS_ATTR_FORWARD(right); -MAS_ATTR_FORWARD(leading); -MAS_ATTR_FORWARD(trailing); -MAS_ATTR_FORWARD(width); -MAS_ATTR_FORWARD(height); -MAS_ATTR_FORWARD(centerX); -MAS_ATTR_FORWARD(centerY); -MAS_ATTR_FORWARD(baseline); - -#if TARGET_OS_IPHONE - -MAS_ATTR_FORWARD(leftMargin); -MAS_ATTR_FORWARD(rightMargin); -MAS_ATTR_FORWARD(topMargin); -MAS_ATTR_FORWARD(bottomMargin); -MAS_ATTR_FORWARD(leadingMargin); -MAS_ATTR_FORWARD(trailingMargin); -MAS_ATTR_FORWARD(centerXWithinMargins); -MAS_ATTR_FORWARD(centerYWithinMargins); - -#endif - -- (MASViewAttribute *(^)(NSLayoutAttribute))attribute { - return [self mas_attribute]; -} - -- (NSArray *)makeConstraints:(void(^)(MASConstraintMaker *))block { - return [self mas_makeConstraints:block]; -} - -- (NSArray *)updateConstraints:(void(^)(MASConstraintMaker *))block { - return [self mas_updateConstraints:block]; -} - -- (NSArray *)remakeConstraints:(void(^)(MASConstraintMaker *))block { - return [self mas_remakeConstraints:block]; -} - -@end - -#endif diff --git a/CoreNewFeatureVC/FrameWorks/Masonry/UIView+Masony.h b/CoreNewFeatureVC/FrameWorks/Masonry/UIView+Masony.h deleted file mode 100644 index 989d4ff..0000000 --- a/CoreNewFeatureVC/FrameWorks/Masonry/UIView+Masony.h +++ /dev/null @@ -1,25 +0,0 @@ -// -// UIView+Masony.h -// Carpenter -// -// Created by 冯成林 on 15/4/22. -// Copyright (c) 2015年 冯成林. All rights reserved. -// - -#import - -@interface UIView (Masony) - - - -/** - * 视图添加约束,使之和父控件一样大 - * - * @param insets insets - */ --(void)masViewAddConstraintMakeEqualSuperViewWithInsets:(UIEdgeInsets)insets; - - - - -@end diff --git a/CoreNewFeatureVC/FrameWorks/Masonry/UIView+Masony.m b/CoreNewFeatureVC/FrameWorks/Masonry/UIView+Masony.m deleted file mode 100644 index e6b5815..0000000 --- a/CoreNewFeatureVC/FrameWorks/Masonry/UIView+Masony.m +++ /dev/null @@ -1,33 +0,0 @@ -// -// UIView+Masony.m -// Carpenter -// -// Created by 冯成林 on 15/4/22. -// Copyright (c) 2015年 冯成林. All rights reserved. -// - -#import "UIView+Masony.h" -#import "Masonry.h" - -@implementation UIView (Masony) - - -/** - * 视图添加约束,使之和父控件一样大 - * - * @param insets insets - */ --(void)masViewAddConstraintMakeEqualSuperViewWithInsets:(UIEdgeInsets)insets{ - - [self mas_makeConstraints:^(MASConstraintMaker *make) { - - make.edges.equalTo(self.superview).with.insets(insets); - }]; -} - - - - - - -@end