├── Pods ├── Headers │ ├── Private │ │ ├── Masonry │ │ │ ├── Masonry.h │ │ │ ├── MASUtilities.h │ │ │ ├── MASConstraint.h │ │ │ ├── MASViewAttribute.h │ │ │ ├── MASViewConstraint.h │ │ │ ├── View+MASAdditions.h │ │ │ ├── MASConstraintMaker.h │ │ │ ├── MASLayoutConstraint.h │ │ │ ├── NSArray+MASAdditions.h │ │ │ ├── MASCompositeConstraint.h │ │ │ ├── MASConstraint+Private.h │ │ │ ├── View+MASShorthandAdditions.h │ │ │ ├── ViewController+MASAdditions.h │ │ │ ├── NSArray+MASShorthandAdditions.h │ │ │ └── NSLayoutConstraint+MASDebugAdditions.h │ │ └── MYKit │ │ │ ├── MYKit.h │ │ │ ├── MYUIKit.h │ │ │ ├── MYSafeKit.h │ │ │ ├── MYKitDefinition.h │ │ │ ├── NSNull+Safe.h │ │ │ ├── SafeKitShield.h │ │ │ ├── UIView+Badge.h │ │ │ ├── UIView+Line.h │ │ │ ├── MYFoundationKit.h │ │ │ ├── NSData+YYAdd.h │ │ │ ├── NSTimer+Safe.h │ │ │ ├── NSURL+Param.h │ │ │ ├── UIButton+Badge.h │ │ │ ├── UIImage+Color.h │ │ │ ├── UIView+Addition.h │ │ │ ├── UIView+Gesture.h │ │ │ ├── UIView+Gradient.h │ │ │ ├── UIView+Position.h │ │ │ ├── MYSafeKitRecord.h │ │ │ ├── NSDate+Addition.h │ │ │ ├── NSNumber+Round.h │ │ │ ├── NSObject+SafeKVO.h │ │ │ ├── NSString+Size.h │ │ │ ├── NSString+Trims.h │ │ │ ├── UIColor+Addition.h │ │ │ ├── UIImage+Addition.h │ │ │ ├── UILabel+CountDown.h │ │ │ ├── NSArray+Addition.h │ │ │ ├── NSArray+Safe.h │ │ │ ├── NSBundle+AppIcon.h │ │ │ ├── NSObject+Swizzle.h │ │ │ ├── NSString+Regular.h │ │ │ ├── UIButton+CountDown.h │ │ │ ├── UIButton+Indicator.h │ │ │ ├── UIButton+Submitting.h │ │ │ ├── UIDevice+Addition.h │ │ │ ├── UILabel+LineSpacing.h │ │ │ ├── UIResponder+Chain.h │ │ │ ├── UIScreen+Addition.h │ │ │ ├── UITextField+Shake.h │ │ │ ├── UITextView+Select.h │ │ │ ├── UIView+CornerRadii.h │ │ │ ├── UIView+CustomBorder.h │ │ │ ├── UIView+FindSubView.h │ │ │ ├── UIWindow+Hierarchy.h │ │ │ ├── NSArray+Collection.h │ │ │ ├── NSArray+SafeAccess.h │ │ │ ├── NSDate+NSDateRFC1123.h │ │ │ ├── NSNumber+Addition.h │ │ │ ├── NSObject+Addition.h │ │ │ ├── NSObject+Safe.h │ │ │ ├── NSString+Addition.h │ │ │ ├── NSString+Collection.h │ │ │ ├── NSString+Safe.h │ │ │ ├── UIImage+CornerRadius.h │ │ │ ├── UIImage+ImageEffects.h │ │ │ ├── UIResponder+Router.h │ │ │ ├── UIView+SuperController.h │ │ │ ├── NSDictionary+Safe.h │ │ │ ├── UIButton+ImageTitleStyle.h │ │ │ ├── UIButton+TouchAreaInsets.h │ │ │ ├── UIImageView+RectCorner.h │ │ │ ├── UILabel+AutomaticWriting.h │ │ │ ├── UIScrollView+Addition.h │ │ │ ├── UITextField+InputLimit.h │ │ │ ├── NSDictionary+Addition.h │ │ │ ├── NSMutableArray+Queue.h │ │ │ ├── NSMutableArray+Safe.h │ │ │ ├── NSMutableArray+Sort.h │ │ │ ├── NSMutableArray+Stack.h │ │ │ ├── NSMutableString+Safe.h │ │ │ ├── UIApplication+Authority.h │ │ │ ├── UIBarButtonItem+Badge.h │ │ │ ├── UIImageView+CornerRadius.h │ │ │ ├── UITableView+PlaceHolder.h │ │ │ ├── NSDictionary+Collection.h │ │ │ ├── NSDictionary+SafeAccess.h │ │ │ ├── NSObject+AssociatedObject.h │ │ │ ├── NSObject+UnknowSelector.h │ │ │ ├── UIAlertController+Blocks.h │ │ │ ├── UIBarButtonItem+Addition.h │ │ │ ├── UINavigationBar+Addition.h │ │ │ ├── UINavigationItem+Loading.h │ │ │ ├── UINavigationItem+Margin.h │ │ │ ├── MYSafeFoundationContainer.h │ │ │ ├── NSMutableArray+SafeAccess.h │ │ │ ├── NSMutableDictionary+Safe.h │ │ │ ├── NSNotificationCenter+SafeKit.h │ │ │ ├── NSUserDefaults+SafeAccess.h │ │ │ ├── TableViewPlaceHolderDelegate.h │ │ │ ├── UIViewController+ClassName.h │ │ │ ├── UICollectionView+PlaceHolder.h │ │ │ ├── UITextView+InputLengthCalculate.h │ │ │ ├── UIViewController+PageViewLevel.h │ │ │ ├── CollectionViewPlaceHolderDelegate.h │ │ │ ├── UINavigationController+Addition.h │ │ │ ├── UIViewController+PreviousController.h │ │ │ ├── UIViewController+TopViewController.h │ │ │ ├── UIApplication+NetworkActivityIndicator.h │ │ │ └── UINavigationController+BackButtonHandler.h │ └── Public │ │ ├── Masonry │ │ ├── Masonry.h │ │ ├── MASConstraint.h │ │ ├── MASUtilities.h │ │ ├── MASConstraintMaker.h │ │ ├── MASViewAttribute.h │ │ ├── MASViewConstraint.h │ │ ├── View+MASAdditions.h │ │ ├── MASLayoutConstraint.h │ │ ├── NSArray+MASAdditions.h │ │ ├── MASCompositeConstraint.h │ │ ├── MASConstraint+Private.h │ │ ├── View+MASShorthandAdditions.h │ │ ├── ViewController+MASAdditions.h │ │ ├── NSArray+MASShorthandAdditions.h │ │ └── NSLayoutConstraint+MASDebugAdditions.h │ │ └── MYKit │ │ ├── MYKit.h │ │ ├── MYUIKit.h │ │ ├── MYSafeKit.h │ │ ├── SafeKitShield.h │ │ ├── MYKitDefinition.h │ │ ├── NSNull+Safe.h │ │ ├── NSURL+Param.h │ │ ├── UIView+Badge.h │ │ ├── UIView+Line.h │ │ ├── MYFoundationKit.h │ │ ├── NSData+YYAdd.h │ │ ├── NSObject+SafeKVO.h │ │ ├── NSTimer+Safe.h │ │ ├── UIButton+Badge.h │ │ ├── UIImage+Color.h │ │ ├── UIView+Addition.h │ │ ├── UIView+Gesture.h │ │ ├── UIView+Gradient.h │ │ ├── UIView+Position.h │ │ ├── MYSafeKitRecord.h │ │ ├── NSDate+Addition.h │ │ ├── NSNumber+Round.h │ │ ├── NSString+Size.h │ │ ├── NSString+Trims.h │ │ ├── UIColor+Addition.h │ │ ├── UIDevice+Addition.h │ │ ├── UIImage+Addition.h │ │ ├── UILabel+CountDown.h │ │ ├── UIScreen+Addition.h │ │ ├── UIView+CornerRadii.h │ │ ├── UIView+FindSubView.h │ │ ├── NSArray+Addition.h │ │ ├── NSArray+Safe.h │ │ ├── NSBundle+AppIcon.h │ │ ├── NSNumber+Addition.h │ │ ├── NSObject+Addition.h │ │ ├── NSObject+Safe.h │ │ ├── NSObject+Swizzle.h │ │ ├── NSString+Addition.h │ │ ├── NSString+Regular.h │ │ ├── NSString+Safe.h │ │ ├── UIButton+CountDown.h │ │ ├── UIButton+Indicator.h │ │ ├── UIButton+Submitting.h │ │ ├── UIImage+CornerRadius.h │ │ ├── UIImage+ImageEffects.h │ │ ├── UILabel+LineSpacing.h │ │ ├── UIResponder+Chain.h │ │ ├── UIResponder+Router.h │ │ ├── UITextField+Shake.h │ │ ├── UITextView+Select.h │ │ ├── UIView+CustomBorder.h │ │ ├── UIWindow+Hierarchy.h │ │ ├── NSArray+Collection.h │ │ ├── NSArray+SafeAccess.h │ │ ├── NSDate+NSDateRFC1123.h │ │ ├── NSString+Collection.h │ │ ├── UIView+SuperController.h │ │ ├── NSDictionary+Safe.h │ │ ├── NSMutableArray+Sort.h │ │ ├── UIBarButtonItem+Badge.h │ │ ├── UIButton+ImageTitleStyle.h │ │ ├── UIButton+TouchAreaInsets.h │ │ ├── UIImageView+RectCorner.h │ │ ├── UILabel+AutomaticWriting.h │ │ ├── UIScrollView+Addition.h │ │ ├── UITableView+PlaceHolder.h │ │ ├── UITextField+InputLimit.h │ │ ├── NSDictionary+Addition.h │ │ ├── NSMutableArray+Queue.h │ │ ├── NSMutableArray+Safe.h │ │ ├── NSMutableArray+Stack.h │ │ ├── NSMutableString+Safe.h │ │ ├── NSObject+UnknowSelector.h │ │ ├── UIApplication+Authority.h │ │ ├── UIImageView+CornerRadius.h │ │ ├── UINavigationItem+Margin.h │ │ ├── NSDictionary+Collection.h │ │ ├── NSDictionary+SafeAccess.h │ │ ├── NSObject+AssociatedObject.h │ │ ├── TableViewPlaceHolderDelegate.h │ │ ├── UIAlertController+Blocks.h │ │ ├── UIBarButtonItem+Addition.h │ │ ├── UINavigationBar+Addition.h │ │ ├── UINavigationItem+Loading.h │ │ ├── MYSafeFoundationContainer.h │ │ ├── NSMutableArray+SafeAccess.h │ │ ├── NSMutableDictionary+Safe.h │ │ ├── NSNotificationCenter+SafeKit.h │ │ ├── NSUserDefaults+SafeAccess.h │ │ ├── UICollectionView+PlaceHolder.h │ │ ├── UITextView+InputLengthCalculate.h │ │ ├── UIViewController+ClassName.h │ │ ├── UIViewController+PageViewLevel.h │ │ ├── CollectionViewPlaceHolderDelegate.h │ │ ├── UINavigationController+Addition.h │ │ ├── UIViewController+PreviousController.h │ │ ├── UIViewController+TopViewController.h │ │ ├── UIApplication+NetworkActivityIndicator.h │ │ └── UINavigationController+BackButtonHandler.h ├── Target Support Files │ ├── MYKit │ │ ├── MYKit-dummy.m │ │ ├── MYKit-prefix.pch │ │ └── MYKit.xcconfig │ ├── Masonry │ │ ├── Masonry-dummy.m │ │ ├── Masonry-prefix.pch │ │ └── Masonry.xcconfig │ └── Pods-MBSlideMenu │ │ ├── Pods-MBSlideMenu-dummy.m │ │ ├── Pods-MBSlideMenu.debug.xcconfig │ │ └── Pods-MBSlideMenu.release.xcconfig ├── Masonry │ ├── Masonry │ │ ├── MASLayoutConstraint.m │ │ ├── NSLayoutConstraint+MASDebugAdditions.h │ │ ├── MASLayoutConstraint.h │ │ ├── MASCompositeConstraint.h │ │ ├── Masonry.h │ │ ├── ViewController+MASAdditions.h │ │ ├── NSArray+MASShorthandAdditions.h │ │ ├── MASViewAttribute.m │ │ ├── MASViewAttribute.h │ │ ├── ViewController+MASAdditions.m │ │ └── MASViewConstraint.h │ └── LICENSE ├── MYKit │ ├── MYKit │ │ └── Classes │ │ │ ├── SafeKit │ │ │ ├── NSNull │ │ │ │ ├── NSNull+Safe.h │ │ │ │ └── NSNull+Safe.m │ │ │ ├── KVO │ │ │ │ └── NSObject+SafeKVO.h │ │ │ ├── NSTimer │ │ │ │ └── NSTimer+Safe.h │ │ │ ├── FoundationContainer │ │ │ │ ├── NSArray+Safe.h │ │ │ │ ├── NSObject+Safe.h │ │ │ │ ├── NSString+Safe.h │ │ │ │ ├── NSMutableArray+Safe.h │ │ │ │ ├── NSDictionary+Safe.h │ │ │ │ ├── NSMutableString+Safe.h │ │ │ │ ├── NSMutableDictionary+Safe.h │ │ │ │ ├── MYSafeFoundationContainer.h │ │ │ │ └── MYSafeFoundationContainer.m │ │ │ ├── UnknowSelector │ │ │ │ └── NSObject+UnknowSelector.h │ │ │ ├── Notification │ │ │ │ └── NSNotificationCenter+SafeKit.h │ │ │ ├── SafeKitShield.h │ │ │ ├── Record │ │ │ │ └── MYSafeKitRecord.h │ │ │ └── MYSafeKit.h │ │ │ ├── UIKit │ │ │ ├── UIImageView │ │ │ │ ├── UIImageView+CornerRadius.h │ │ │ │ └── UIImageView+RectCorner.h │ │ │ ├── UIViewController │ │ │ │ ├── UIViewController+ClassName.h │ │ │ │ ├── UIViewController+TopViewController.h │ │ │ │ ├── UIViewController+PageViewLevel.h │ │ │ │ ├── UIViewController+PreviousController.h │ │ │ │ └── UIViewController+TopViewController.m │ │ │ ├── UITextField │ │ │ │ └── UITextField+InputLimit.h │ │ │ ├── UITableView │ │ │ │ ├── UITableView+PlaceHolder.h │ │ │ │ └── TableViewPlaceHolderDelegate.h │ │ │ ├── UIResponder │ │ │ │ ├── UIResponder+Chain.h │ │ │ │ ├── UIResponder+Router.m │ │ │ │ └── UIResponder+Router.h │ │ │ ├── UIButton │ │ │ │ ├── UIButton+TouchAreaInsets.h │ │ │ │ ├── UIButton+Indicator.h │ │ │ │ ├── UIButton+CountDown.h │ │ │ │ ├── UIButton+Submitting.h │ │ │ │ ├── UIButton+Badge.h │ │ │ │ ├── UIButton+TouchAreaInsets.m │ │ │ │ ├── UIButton+ImageTitleStyle.h │ │ │ │ ├── UIButton+Indicator.m │ │ │ │ └── UIButton+CountDown.m │ │ │ ├── UICollectionView │ │ │ │ ├── UICollectionView+PlaceHolder.h │ │ │ │ └── CollectionViewPlaceHolderDelegate.h │ │ │ ├── UILabel │ │ │ │ ├── UILabel+LineSpacing.h │ │ │ │ ├── UILabel+CountDown.h │ │ │ │ ├── UILabel+LineSpacing.m │ │ │ │ └── UILabel+CountDown.m │ │ │ ├── UIView │ │ │ │ ├── UIView+SuperController.h │ │ │ │ ├── UIView+Gesture.h │ │ │ │ ├── UIView+FindSubView.h │ │ │ │ ├── UIView+Position.h │ │ │ │ ├── UIView+CornerRadii.h │ │ │ │ ├── UIView+Addition.h │ │ │ │ ├── UIView+Line.h │ │ │ │ ├── UIView+Badge.h │ │ │ │ ├── UIView+CornerRadii.m │ │ │ │ └── UIView+SuperController.m │ │ │ ├── UITextView │ │ │ │ ├── UITextView+Select.h │ │ │ │ ├── UITextView+InputLengthCalculate.h │ │ │ │ ├── UITextView+Select.m │ │ │ │ └── UITextView+InputLengthCalculate.m │ │ │ ├── UIWindow │ │ │ │ ├── UIWindow+Hierarchy.h │ │ │ │ └── UIWindow+Hierarchy.m │ │ │ ├── UINavigationItem │ │ │ │ ├── UINavigationItem+Margin.h │ │ │ │ └── UINavigationItem+Loading.h │ │ │ ├── UIColor │ │ │ │ └── UIColor+Addition.h │ │ │ ├── UINavigationController │ │ │ │ ├── UINavigationController+BackButtonHandler.h │ │ │ │ ├── UINavigationController+Addition.h │ │ │ │ ├── UINavigationController+BackButtonHandler.m │ │ │ │ └── UINavigationController+Addition.m │ │ │ ├── UINavigationBar │ │ │ │ └── UINavigationBar+Addition.h │ │ │ ├── UIApplication │ │ │ │ ├── UIApplication+NetworkActivityIndicator.m │ │ │ │ ├── UIApplication+Authority.h │ │ │ │ └── UIApplication+NetworkActivityIndicator.h │ │ │ ├── UIImage │ │ │ │ ├── UIImage+Addition.h │ │ │ │ ├── UIImage+Color.h │ │ │ │ └── UIImage+CornerRadius.h │ │ │ ├── UIScrollView │ │ │ │ └── UIScrollView+Addition.h │ │ │ ├── UIBarButtonItem │ │ │ │ ├── UIBarButtonItem+Badge.h │ │ │ │ └── UIBarButtonItem+Addition.h │ │ │ ├── UIDevice │ │ │ │ └── UIDevice+Addition.h │ │ │ └── UIScreen │ │ │ │ └── UIScreen+Addition.h │ │ │ ├── Foundation │ │ │ ├── NSObject │ │ │ │ ├── NSObject+Addition.h │ │ │ │ ├── NSObject+AssociatedObject.h │ │ │ │ ├── NSObject+Addition.m │ │ │ │ ├── NSObject+AssociatedObject.m │ │ │ │ └── NSObject+Swizzle.h │ │ │ ├── NSBundle │ │ │ │ ├── NSBundle+AppIcon.h │ │ │ │ └── NSBundle+AppIcon.m │ │ │ ├── NSMutableArray │ │ │ │ ├── NSMutableArray+Stack.h │ │ │ │ ├── NSMutableArray+Queue.h │ │ │ │ ├── NSMutableArray+Stack.m │ │ │ │ ├── NSMutableArray+SafeAccess.h │ │ │ │ ├── NSMutableArray+Queue.m │ │ │ │ ├── NSMutableArray+SafeAccess.m │ │ │ │ └── NSMutableArray+Sort.h │ │ │ ├── NSURL │ │ │ │ ├── NSURL+Param.h │ │ │ │ └── NSURL+Param.m │ │ │ ├── NSNumber │ │ │ │ ├── NSNumber+Addition.h │ │ │ │ ├── NSNumber+Round.h │ │ │ │ └── NSNumber+Addition.m │ │ │ ├── NSString │ │ │ │ ├── NSString+Trims.h │ │ │ │ └── NSString+Regular.h │ │ │ ├── NSDictionary │ │ │ │ ├── NSDictionary+Collection.h │ │ │ │ └── NSDictionary+SafeAccess.h │ │ │ ├── NSUserDefaults │ │ │ │ ├── NSUserDefaults+SafeAccess.h │ │ │ │ └── NSUserDefaults+SafeAccess.m │ │ │ ├── MYFoundationKit.h │ │ │ ├── NSDate │ │ │ │ └── NSDate+NSDateRFC1123.h │ │ │ └── NSArray │ │ │ │ ├── NSArray+SafeAccess.h │ │ │ │ └── NSArray+Addition.h │ │ │ └── Core │ │ │ └── MYKit.h │ ├── README.md │ └── LICENSE └── Manifest.lock ├── Podfile ├── MBSlideMenu ├── Assets.xcassets │ ├── Contents.json │ ├── AppIcon.appiconset │ │ ├── AppIcon29x29.png │ │ ├── AppIcon57x57.png │ │ ├── AppIcon29x29@2x.png │ │ ├── AppIcon29x29@3x.png │ │ ├── AppIcon40x40@2x.png │ │ ├── AppIcon40x40@3x.png │ │ ├── AppIcon57x57@2x.png │ │ ├── AppIcon60x60@2x.png │ │ └── AppIcon60x60@3x.png │ ├── navigationbar_list_hl.imageset │ │ ├── navigationbar_list_hl.png │ │ └── Contents.json │ └── navigationbar_list_normal.imageset │ │ ├── navigationbar_list_normal.png │ │ └── Contents.json ├── ViewController.h ├── AppDelegate.h ├── main.m ├── MBSlideMenu │ └── MBSlideMenuViewController.h ├── MBNavigationBar.h ├── Info.plist └── Base.lproj │ └── LaunchScreen.storyboard ├── MBSlideMenu.xcodeproj └── project.xcworkspace │ ├── contents.xcworkspacedata │ └── xcshareddata │ └── IDEWorkspaceChecks.plist ├── MBSlideMenu.xcworkspace ├── contents.xcworkspacedata └── xcshareddata │ └── IDEWorkspaceChecks.plist ├── .gitignore ├── Podfile.lock ├── MBSlideMenuTests ├── Info.plist └── MBSlideMenuTests.m └── MBSlideMenuUITests ├── Info.plist └── MBSlideMenuUITests.m /Pods/Headers/Private/Masonry/Masonry.h: -------------------------------------------------------------------------------- 1 | ../../../Masonry/Masonry/Masonry.h -------------------------------------------------------------------------------- /Pods/Headers/Public/Masonry/Masonry.h: -------------------------------------------------------------------------------- 1 | ../../../Masonry/Masonry/Masonry.h -------------------------------------------------------------------------------- /Pods/Headers/Private/MYKit/MYKit.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/Core/MYKit.h -------------------------------------------------------------------------------- /Pods/Headers/Public/MYKit/MYKit.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/Core/MYKit.h -------------------------------------------------------------------------------- /Pods/Headers/Private/MYKit/MYUIKit.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/MYUIKit.h -------------------------------------------------------------------------------- /Pods/Headers/Private/Masonry/MASUtilities.h: -------------------------------------------------------------------------------- 1 | ../../../Masonry/Masonry/MASUtilities.h -------------------------------------------------------------------------------- /Pods/Headers/Public/MYKit/MYUIKit.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/MYUIKit.h -------------------------------------------------------------------------------- /Pods/Headers/Public/Masonry/MASConstraint.h: -------------------------------------------------------------------------------- 1 | ../../../Masonry/Masonry/MASConstraint.h -------------------------------------------------------------------------------- /Pods/Headers/Public/Masonry/MASUtilities.h: -------------------------------------------------------------------------------- 1 | ../../../Masonry/Masonry/MASUtilities.h -------------------------------------------------------------------------------- /Pods/Headers/Private/MYKit/MYSafeKit.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/SafeKit/MYSafeKit.h -------------------------------------------------------------------------------- /Pods/Headers/Private/Masonry/MASConstraint.h: -------------------------------------------------------------------------------- 1 | ../../../Masonry/Masonry/MASConstraint.h -------------------------------------------------------------------------------- /Pods/Headers/Public/MYKit/MYSafeKit.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/SafeKit/MYSafeKit.h -------------------------------------------------------------------------------- /Pods/Headers/Private/Masonry/MASViewAttribute.h: -------------------------------------------------------------------------------- 1 | ../../../Masonry/Masonry/MASViewAttribute.h -------------------------------------------------------------------------------- /Pods/Headers/Private/Masonry/MASViewConstraint.h: -------------------------------------------------------------------------------- 1 | ../../../Masonry/Masonry/MASViewConstraint.h -------------------------------------------------------------------------------- /Pods/Headers/Private/Masonry/View+MASAdditions.h: -------------------------------------------------------------------------------- 1 | ../../../Masonry/Masonry/View+MASAdditions.h -------------------------------------------------------------------------------- /Pods/Headers/Public/MYKit/SafeKitShield.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/SafeKit/SafeKitShield.h -------------------------------------------------------------------------------- /Pods/Headers/Public/Masonry/MASConstraintMaker.h: -------------------------------------------------------------------------------- 1 | ../../../Masonry/Masonry/MASConstraintMaker.h -------------------------------------------------------------------------------- /Pods/Headers/Public/Masonry/MASViewAttribute.h: -------------------------------------------------------------------------------- 1 | ../../../Masonry/Masonry/MASViewAttribute.h -------------------------------------------------------------------------------- /Pods/Headers/Public/Masonry/MASViewConstraint.h: -------------------------------------------------------------------------------- 1 | ../../../Masonry/Masonry/MASViewConstraint.h -------------------------------------------------------------------------------- /Pods/Headers/Public/Masonry/View+MASAdditions.h: -------------------------------------------------------------------------------- 1 | ../../../Masonry/Masonry/View+MASAdditions.h -------------------------------------------------------------------------------- /Pods/Headers/Private/MYKit/MYKitDefinition.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/Core/MYKitDefinition.h -------------------------------------------------------------------------------- /Pods/Headers/Private/MYKit/NSNull+Safe.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/SafeKit/NSNull/NSNull+Safe.h -------------------------------------------------------------------------------- /Pods/Headers/Private/MYKit/SafeKitShield.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/SafeKit/SafeKitShield.h -------------------------------------------------------------------------------- /Pods/Headers/Private/MYKit/UIView+Badge.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UIView/UIView+Badge.h -------------------------------------------------------------------------------- /Pods/Headers/Private/MYKit/UIView+Line.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UIView/UIView+Line.h -------------------------------------------------------------------------------- /Pods/Headers/Private/Masonry/MASConstraintMaker.h: -------------------------------------------------------------------------------- 1 | ../../../Masonry/Masonry/MASConstraintMaker.h -------------------------------------------------------------------------------- /Pods/Headers/Private/Masonry/MASLayoutConstraint.h: -------------------------------------------------------------------------------- 1 | ../../../Masonry/Masonry/MASLayoutConstraint.h -------------------------------------------------------------------------------- /Pods/Headers/Private/Masonry/NSArray+MASAdditions.h: -------------------------------------------------------------------------------- 1 | ../../../Masonry/Masonry/NSArray+MASAdditions.h -------------------------------------------------------------------------------- /Pods/Headers/Public/MYKit/MYKitDefinition.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/Core/MYKitDefinition.h -------------------------------------------------------------------------------- /Pods/Headers/Public/MYKit/NSNull+Safe.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/SafeKit/NSNull/NSNull+Safe.h -------------------------------------------------------------------------------- /Pods/Headers/Public/MYKit/NSURL+Param.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/Foundation/NSURL/NSURL+Param.h -------------------------------------------------------------------------------- /Pods/Headers/Public/MYKit/UIView+Badge.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UIView/UIView+Badge.h -------------------------------------------------------------------------------- /Pods/Headers/Public/MYKit/UIView+Line.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UIView/UIView+Line.h -------------------------------------------------------------------------------- /Pods/Headers/Public/Masonry/MASLayoutConstraint.h: -------------------------------------------------------------------------------- 1 | ../../../Masonry/Masonry/MASLayoutConstraint.h -------------------------------------------------------------------------------- /Pods/Headers/Public/Masonry/NSArray+MASAdditions.h: -------------------------------------------------------------------------------- 1 | ../../../Masonry/Masonry/NSArray+MASAdditions.h -------------------------------------------------------------------------------- /Pods/Headers/Private/MYKit/MYFoundationKit.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/Foundation/MYFoundationKit.h -------------------------------------------------------------------------------- /Pods/Headers/Private/MYKit/NSData+YYAdd.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/Foundation/NSData/NSData+YYAdd.h -------------------------------------------------------------------------------- /Pods/Headers/Private/MYKit/NSTimer+Safe.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/SafeKit/NSTimer/NSTimer+Safe.h -------------------------------------------------------------------------------- /Pods/Headers/Private/MYKit/NSURL+Param.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/Foundation/NSURL/NSURL+Param.h -------------------------------------------------------------------------------- /Pods/Headers/Private/MYKit/UIButton+Badge.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UIButton/UIButton+Badge.h -------------------------------------------------------------------------------- /Pods/Headers/Private/MYKit/UIImage+Color.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UIImage/UIImage+Color.h -------------------------------------------------------------------------------- /Pods/Headers/Private/MYKit/UIView+Addition.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UIView/UIView+Addition.h -------------------------------------------------------------------------------- /Pods/Headers/Private/MYKit/UIView+Gesture.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UIView/UIView+Gesture.h -------------------------------------------------------------------------------- /Pods/Headers/Private/MYKit/UIView+Gradient.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UIView/UIView+Gradient.h -------------------------------------------------------------------------------- /Pods/Headers/Private/MYKit/UIView+Position.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UIView/UIView+Position.h -------------------------------------------------------------------------------- /Pods/Headers/Private/Masonry/MASCompositeConstraint.h: -------------------------------------------------------------------------------- 1 | ../../../Masonry/Masonry/MASCompositeConstraint.h -------------------------------------------------------------------------------- /Pods/Headers/Private/Masonry/MASConstraint+Private.h: -------------------------------------------------------------------------------- 1 | ../../../Masonry/Masonry/MASConstraint+Private.h -------------------------------------------------------------------------------- /Pods/Headers/Public/MYKit/MYFoundationKit.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/Foundation/MYFoundationKit.h -------------------------------------------------------------------------------- /Pods/Headers/Public/MYKit/NSData+YYAdd.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/Foundation/NSData/NSData+YYAdd.h -------------------------------------------------------------------------------- /Pods/Headers/Public/MYKit/NSObject+SafeKVO.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/SafeKit/KVO/NSObject+SafeKVO.h -------------------------------------------------------------------------------- /Pods/Headers/Public/MYKit/NSTimer+Safe.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/SafeKit/NSTimer/NSTimer+Safe.h -------------------------------------------------------------------------------- /Pods/Headers/Public/MYKit/UIButton+Badge.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UIButton/UIButton+Badge.h -------------------------------------------------------------------------------- /Pods/Headers/Public/MYKit/UIImage+Color.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UIImage/UIImage+Color.h -------------------------------------------------------------------------------- /Pods/Headers/Public/MYKit/UIView+Addition.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UIView/UIView+Addition.h -------------------------------------------------------------------------------- /Pods/Headers/Public/MYKit/UIView+Gesture.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UIView/UIView+Gesture.h -------------------------------------------------------------------------------- /Pods/Headers/Public/MYKit/UIView+Gradient.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UIView/UIView+Gradient.h -------------------------------------------------------------------------------- /Pods/Headers/Public/MYKit/UIView+Position.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UIView/UIView+Position.h -------------------------------------------------------------------------------- /Pods/Headers/Public/Masonry/MASCompositeConstraint.h: -------------------------------------------------------------------------------- 1 | ../../../Masonry/Masonry/MASCompositeConstraint.h -------------------------------------------------------------------------------- /Pods/Headers/Public/Masonry/MASConstraint+Private.h: -------------------------------------------------------------------------------- 1 | ../../../Masonry/Masonry/MASConstraint+Private.h -------------------------------------------------------------------------------- /Pods/Headers/Private/MYKit/MYSafeKitRecord.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/SafeKit/Record/MYSafeKitRecord.h -------------------------------------------------------------------------------- /Pods/Headers/Private/MYKit/NSDate+Addition.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/Foundation/NSDate/NSDate+Addition.h -------------------------------------------------------------------------------- /Pods/Headers/Private/MYKit/NSNumber+Round.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/Foundation/NSNumber/NSNumber+Round.h -------------------------------------------------------------------------------- /Pods/Headers/Private/MYKit/NSObject+SafeKVO.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/SafeKit/KVO/NSObject+SafeKVO.h -------------------------------------------------------------------------------- /Pods/Headers/Private/MYKit/NSString+Size.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/Foundation/NSString/NSString+Size.h -------------------------------------------------------------------------------- /Pods/Headers/Private/MYKit/NSString+Trims.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/Foundation/NSString/NSString+Trims.h -------------------------------------------------------------------------------- /Pods/Headers/Private/MYKit/UIColor+Addition.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UIColor/UIColor+Addition.h -------------------------------------------------------------------------------- /Pods/Headers/Private/MYKit/UIImage+Addition.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UIImage/UIImage+Addition.h -------------------------------------------------------------------------------- /Pods/Headers/Private/MYKit/UILabel+CountDown.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UILabel/UILabel+CountDown.h -------------------------------------------------------------------------------- /Pods/Headers/Public/MYKit/MYSafeKitRecord.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/SafeKit/Record/MYSafeKitRecord.h -------------------------------------------------------------------------------- /Pods/Headers/Public/MYKit/NSDate+Addition.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/Foundation/NSDate/NSDate+Addition.h -------------------------------------------------------------------------------- /Pods/Headers/Public/MYKit/NSNumber+Round.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/Foundation/NSNumber/NSNumber+Round.h -------------------------------------------------------------------------------- /Pods/Headers/Public/MYKit/NSString+Size.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/Foundation/NSString/NSString+Size.h -------------------------------------------------------------------------------- /Pods/Headers/Public/MYKit/NSString+Trims.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/Foundation/NSString/NSString+Trims.h -------------------------------------------------------------------------------- /Pods/Headers/Public/MYKit/UIColor+Addition.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UIColor/UIColor+Addition.h -------------------------------------------------------------------------------- /Pods/Headers/Public/MYKit/UIDevice+Addition.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UIDevice/UIDevice+Addition.h -------------------------------------------------------------------------------- /Pods/Headers/Public/MYKit/UIImage+Addition.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UIImage/UIImage+Addition.h -------------------------------------------------------------------------------- /Pods/Headers/Public/MYKit/UILabel+CountDown.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UILabel/UILabel+CountDown.h -------------------------------------------------------------------------------- /Pods/Headers/Public/MYKit/UIScreen+Addition.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UIScreen/UIScreen+Addition.h -------------------------------------------------------------------------------- /Pods/Headers/Public/MYKit/UIView+CornerRadii.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UIView/UIView+CornerRadii.h -------------------------------------------------------------------------------- /Pods/Headers/Public/MYKit/UIView+FindSubView.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UIView/UIView+FindSubView.h -------------------------------------------------------------------------------- /Pods/Headers/Private/MYKit/NSArray+Addition.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/Foundation/NSArray/NSArray+Addition.h -------------------------------------------------------------------------------- /Pods/Headers/Private/MYKit/NSArray+Safe.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/SafeKit/FoundationContainer/NSArray+Safe.h -------------------------------------------------------------------------------- /Pods/Headers/Private/MYKit/NSBundle+AppIcon.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/Foundation/NSBundle/NSBundle+AppIcon.h -------------------------------------------------------------------------------- /Pods/Headers/Private/MYKit/NSObject+Swizzle.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/Foundation/NSObject/NSObject+Swizzle.h -------------------------------------------------------------------------------- /Pods/Headers/Private/MYKit/NSString+Regular.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/Foundation/NSString/NSString+Regular.h -------------------------------------------------------------------------------- /Pods/Headers/Private/MYKit/UIButton+CountDown.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UIButton/UIButton+CountDown.h -------------------------------------------------------------------------------- /Pods/Headers/Private/MYKit/UIButton+Indicator.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UIButton/UIButton+Indicator.h -------------------------------------------------------------------------------- /Pods/Headers/Private/MYKit/UIButton+Submitting.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UIButton/UIButton+Submitting.h -------------------------------------------------------------------------------- /Pods/Headers/Private/MYKit/UIDevice+Addition.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UIDevice/UIDevice+Addition.h -------------------------------------------------------------------------------- /Pods/Headers/Private/MYKit/UILabel+LineSpacing.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UILabel/UILabel+LineSpacing.h -------------------------------------------------------------------------------- /Pods/Headers/Private/MYKit/UIResponder+Chain.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UIResponder/UIResponder+Chain.h -------------------------------------------------------------------------------- /Pods/Headers/Private/MYKit/UIScreen+Addition.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UIScreen/UIScreen+Addition.h -------------------------------------------------------------------------------- /Pods/Headers/Private/MYKit/UITextField+Shake.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UITextField/UITextField+Shake.h -------------------------------------------------------------------------------- /Pods/Headers/Private/MYKit/UITextView+Select.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UITextView/UITextView+Select.h -------------------------------------------------------------------------------- /Pods/Headers/Private/MYKit/UIView+CornerRadii.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UIView/UIView+CornerRadii.h -------------------------------------------------------------------------------- /Pods/Headers/Private/MYKit/UIView+CustomBorder.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UIView/UIView+CustomBorder.h -------------------------------------------------------------------------------- /Pods/Headers/Private/MYKit/UIView+FindSubView.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UIView/UIView+FindSubView.h -------------------------------------------------------------------------------- /Pods/Headers/Private/MYKit/UIWindow+Hierarchy.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UIWindow/UIWindow+Hierarchy.h -------------------------------------------------------------------------------- /Pods/Headers/Private/Masonry/View+MASShorthandAdditions.h: -------------------------------------------------------------------------------- 1 | ../../../Masonry/Masonry/View+MASShorthandAdditions.h -------------------------------------------------------------------------------- /Pods/Headers/Private/Masonry/ViewController+MASAdditions.h: -------------------------------------------------------------------------------- 1 | ../../../Masonry/Masonry/ViewController+MASAdditions.h -------------------------------------------------------------------------------- /Pods/Headers/Public/MYKit/NSArray+Addition.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/Foundation/NSArray/NSArray+Addition.h -------------------------------------------------------------------------------- /Pods/Headers/Public/MYKit/NSArray+Safe.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/SafeKit/FoundationContainer/NSArray+Safe.h -------------------------------------------------------------------------------- /Pods/Headers/Public/MYKit/NSBundle+AppIcon.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/Foundation/NSBundle/NSBundle+AppIcon.h -------------------------------------------------------------------------------- /Pods/Headers/Public/MYKit/NSNumber+Addition.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/Foundation/NSNumber/NSNumber+Addition.h -------------------------------------------------------------------------------- /Pods/Headers/Public/MYKit/NSObject+Addition.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/Foundation/NSObject/NSObject+Addition.h -------------------------------------------------------------------------------- /Pods/Headers/Public/MYKit/NSObject+Safe.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/SafeKit/FoundationContainer/NSObject+Safe.h -------------------------------------------------------------------------------- /Pods/Headers/Public/MYKit/NSObject+Swizzle.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/Foundation/NSObject/NSObject+Swizzle.h -------------------------------------------------------------------------------- /Pods/Headers/Public/MYKit/NSString+Addition.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/Foundation/NSString/NSString+Addition.h -------------------------------------------------------------------------------- /Pods/Headers/Public/MYKit/NSString+Regular.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/Foundation/NSString/NSString+Regular.h -------------------------------------------------------------------------------- /Pods/Headers/Public/MYKit/NSString+Safe.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/SafeKit/FoundationContainer/NSString+Safe.h -------------------------------------------------------------------------------- /Pods/Headers/Public/MYKit/UIButton+CountDown.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UIButton/UIButton+CountDown.h -------------------------------------------------------------------------------- /Pods/Headers/Public/MYKit/UIButton+Indicator.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UIButton/UIButton+Indicator.h -------------------------------------------------------------------------------- /Pods/Headers/Public/MYKit/UIButton+Submitting.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UIButton/UIButton+Submitting.h -------------------------------------------------------------------------------- /Pods/Headers/Public/MYKit/UIImage+CornerRadius.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UIImage/UIImage+CornerRadius.h -------------------------------------------------------------------------------- /Pods/Headers/Public/MYKit/UIImage+ImageEffects.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UIImage/UIImage+ImageEffects.h -------------------------------------------------------------------------------- /Pods/Headers/Public/MYKit/UILabel+LineSpacing.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UILabel/UILabel+LineSpacing.h -------------------------------------------------------------------------------- /Pods/Headers/Public/MYKit/UIResponder+Chain.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UIResponder/UIResponder+Chain.h -------------------------------------------------------------------------------- /Pods/Headers/Public/MYKit/UIResponder+Router.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UIResponder/UIResponder+Router.h -------------------------------------------------------------------------------- /Pods/Headers/Public/MYKit/UITextField+Shake.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UITextField/UITextField+Shake.h -------------------------------------------------------------------------------- /Pods/Headers/Public/MYKit/UITextView+Select.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UITextView/UITextView+Select.h -------------------------------------------------------------------------------- /Pods/Headers/Public/MYKit/UIView+CustomBorder.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UIView/UIView+CustomBorder.h -------------------------------------------------------------------------------- /Pods/Headers/Public/MYKit/UIWindow+Hierarchy.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UIWindow/UIWindow+Hierarchy.h -------------------------------------------------------------------------------- /Pods/Headers/Public/Masonry/View+MASShorthandAdditions.h: -------------------------------------------------------------------------------- 1 | ../../../Masonry/Masonry/View+MASShorthandAdditions.h -------------------------------------------------------------------------------- /Pods/Headers/Public/Masonry/ViewController+MASAdditions.h: -------------------------------------------------------------------------------- 1 | ../../../Masonry/Masonry/ViewController+MASAdditions.h -------------------------------------------------------------------------------- /Podfile: -------------------------------------------------------------------------------- 1 | 2 | platform :ios, "8.0" 3 | 4 | target 'MBSlideMenu' do 5 | pod 'MYKit' 6 | pod 'Masonry' 7 | end 8 | -------------------------------------------------------------------------------- /Pods/Headers/Private/MYKit/NSArray+Collection.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/Foundation/NSArray/NSArray+Collection.h -------------------------------------------------------------------------------- /Pods/Headers/Private/MYKit/NSArray+SafeAccess.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/Foundation/NSArray/NSArray+SafeAccess.h -------------------------------------------------------------------------------- /Pods/Headers/Private/MYKit/NSDate+NSDateRFC1123.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/Foundation/NSDate/NSDate+NSDateRFC1123.h -------------------------------------------------------------------------------- /Pods/Headers/Private/MYKit/NSNumber+Addition.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/Foundation/NSNumber/NSNumber+Addition.h -------------------------------------------------------------------------------- /Pods/Headers/Private/MYKit/NSObject+Addition.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/Foundation/NSObject/NSObject+Addition.h -------------------------------------------------------------------------------- /Pods/Headers/Private/MYKit/NSObject+Safe.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/SafeKit/FoundationContainer/NSObject+Safe.h -------------------------------------------------------------------------------- /Pods/Headers/Private/MYKit/NSString+Addition.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/Foundation/NSString/NSString+Addition.h -------------------------------------------------------------------------------- /Pods/Headers/Private/MYKit/NSString+Collection.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/Foundation/NSString/NSString+Collection.h -------------------------------------------------------------------------------- /Pods/Headers/Private/MYKit/NSString+Safe.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/SafeKit/FoundationContainer/NSString+Safe.h -------------------------------------------------------------------------------- /Pods/Headers/Private/MYKit/UIImage+CornerRadius.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UIImage/UIImage+CornerRadius.h -------------------------------------------------------------------------------- /Pods/Headers/Private/MYKit/UIImage+ImageEffects.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UIImage/UIImage+ImageEffects.h -------------------------------------------------------------------------------- /Pods/Headers/Private/MYKit/UIResponder+Router.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UIResponder/UIResponder+Router.h -------------------------------------------------------------------------------- /Pods/Headers/Private/MYKit/UIView+SuperController.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UIView/UIView+SuperController.h -------------------------------------------------------------------------------- /Pods/Headers/Private/Masonry/NSArray+MASShorthandAdditions.h: -------------------------------------------------------------------------------- 1 | ../../../Masonry/Masonry/NSArray+MASShorthandAdditions.h -------------------------------------------------------------------------------- /Pods/Headers/Public/MYKit/NSArray+Collection.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/Foundation/NSArray/NSArray+Collection.h -------------------------------------------------------------------------------- /Pods/Headers/Public/MYKit/NSArray+SafeAccess.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/Foundation/NSArray/NSArray+SafeAccess.h -------------------------------------------------------------------------------- /Pods/Headers/Public/MYKit/NSDate+NSDateRFC1123.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/Foundation/NSDate/NSDate+NSDateRFC1123.h -------------------------------------------------------------------------------- /Pods/Headers/Public/MYKit/NSString+Collection.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/Foundation/NSString/NSString+Collection.h -------------------------------------------------------------------------------- /Pods/Headers/Public/MYKit/UIView+SuperController.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UIView/UIView+SuperController.h -------------------------------------------------------------------------------- /Pods/Headers/Public/Masonry/NSArray+MASShorthandAdditions.h: -------------------------------------------------------------------------------- 1 | ../../../Masonry/Masonry/NSArray+MASShorthandAdditions.h -------------------------------------------------------------------------------- /MBSlideMenu/Assets.xcassets/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "info" : { 3 | "version" : 1, 4 | "author" : "xcode" 5 | } 6 | } -------------------------------------------------------------------------------- /Pods/Headers/Private/MYKit/NSDictionary+Safe.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/SafeKit/FoundationContainer/NSDictionary+Safe.h -------------------------------------------------------------------------------- /Pods/Headers/Private/MYKit/UIButton+ImageTitleStyle.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UIButton/UIButton+ImageTitleStyle.h -------------------------------------------------------------------------------- /Pods/Headers/Private/MYKit/UIButton+TouchAreaInsets.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UIButton/UIButton+TouchAreaInsets.h -------------------------------------------------------------------------------- /Pods/Headers/Private/MYKit/UIImageView+RectCorner.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UIImageView/UIImageView+RectCorner.h -------------------------------------------------------------------------------- /Pods/Headers/Private/MYKit/UILabel+AutomaticWriting.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UILabel/UILabel+AutomaticWriting.h -------------------------------------------------------------------------------- /Pods/Headers/Private/MYKit/UIScrollView+Addition.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UIScrollView/UIScrollView+Addition.h -------------------------------------------------------------------------------- /Pods/Headers/Private/MYKit/UITextField+InputLimit.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UITextField/UITextField+InputLimit.h -------------------------------------------------------------------------------- /Pods/Headers/Public/MYKit/NSDictionary+Safe.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/SafeKit/FoundationContainer/NSDictionary+Safe.h -------------------------------------------------------------------------------- /Pods/Headers/Public/MYKit/NSMutableArray+Sort.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/Foundation/NSMutableArray/NSMutableArray+Sort.h -------------------------------------------------------------------------------- /Pods/Headers/Public/MYKit/UIBarButtonItem+Badge.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UIBarButtonItem/UIBarButtonItem+Badge.h -------------------------------------------------------------------------------- /Pods/Headers/Public/MYKit/UIButton+ImageTitleStyle.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UIButton/UIButton+ImageTitleStyle.h -------------------------------------------------------------------------------- /Pods/Headers/Public/MYKit/UIButton+TouchAreaInsets.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UIButton/UIButton+TouchAreaInsets.h -------------------------------------------------------------------------------- /Pods/Headers/Public/MYKit/UIImageView+RectCorner.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UIImageView/UIImageView+RectCorner.h -------------------------------------------------------------------------------- /Pods/Headers/Public/MYKit/UILabel+AutomaticWriting.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UILabel/UILabel+AutomaticWriting.h -------------------------------------------------------------------------------- /Pods/Headers/Public/MYKit/UIScrollView+Addition.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UIScrollView/UIScrollView+Addition.h -------------------------------------------------------------------------------- /Pods/Headers/Public/MYKit/UITableView+PlaceHolder.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UITableView/UITableView+PlaceHolder.h -------------------------------------------------------------------------------- /Pods/Headers/Public/MYKit/UITextField+InputLimit.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UITextField/UITextField+InputLimit.h -------------------------------------------------------------------------------- /Pods/Headers/Private/MYKit/NSDictionary+Addition.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/Foundation/NSDictionary/NSDictionary+Addition.h -------------------------------------------------------------------------------- /Pods/Headers/Private/MYKit/NSMutableArray+Queue.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/Foundation/NSMutableArray/NSMutableArray+Queue.h -------------------------------------------------------------------------------- /Pods/Headers/Private/MYKit/NSMutableArray+Safe.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/SafeKit/FoundationContainer/NSMutableArray+Safe.h -------------------------------------------------------------------------------- /Pods/Headers/Private/MYKit/NSMutableArray+Sort.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/Foundation/NSMutableArray/NSMutableArray+Sort.h -------------------------------------------------------------------------------- /Pods/Headers/Private/MYKit/NSMutableArray+Stack.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/Foundation/NSMutableArray/NSMutableArray+Stack.h -------------------------------------------------------------------------------- /Pods/Headers/Private/MYKit/NSMutableString+Safe.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/SafeKit/FoundationContainer/NSMutableString+Safe.h -------------------------------------------------------------------------------- /Pods/Headers/Private/MYKit/UIApplication+Authority.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UIApplication/UIApplication+Authority.h -------------------------------------------------------------------------------- /Pods/Headers/Private/MYKit/UIBarButtonItem+Badge.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UIBarButtonItem/UIBarButtonItem+Badge.h -------------------------------------------------------------------------------- /Pods/Headers/Private/MYKit/UIImageView+CornerRadius.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UIImageView/UIImageView+CornerRadius.h -------------------------------------------------------------------------------- /Pods/Headers/Private/MYKit/UITableView+PlaceHolder.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UITableView/UITableView+PlaceHolder.h -------------------------------------------------------------------------------- /Pods/Headers/Public/MYKit/NSDictionary+Addition.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/Foundation/NSDictionary/NSDictionary+Addition.h -------------------------------------------------------------------------------- /Pods/Headers/Public/MYKit/NSMutableArray+Queue.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/Foundation/NSMutableArray/NSMutableArray+Queue.h -------------------------------------------------------------------------------- /Pods/Headers/Public/MYKit/NSMutableArray+Safe.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/SafeKit/FoundationContainer/NSMutableArray+Safe.h -------------------------------------------------------------------------------- /Pods/Headers/Public/MYKit/NSMutableArray+Stack.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/Foundation/NSMutableArray/NSMutableArray+Stack.h -------------------------------------------------------------------------------- /Pods/Headers/Public/MYKit/NSMutableString+Safe.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/SafeKit/FoundationContainer/NSMutableString+Safe.h -------------------------------------------------------------------------------- /Pods/Headers/Public/MYKit/NSObject+UnknowSelector.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/SafeKit/UnknowSelector/NSObject+UnknowSelector.h -------------------------------------------------------------------------------- /Pods/Headers/Public/MYKit/UIApplication+Authority.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UIApplication/UIApplication+Authority.h -------------------------------------------------------------------------------- /Pods/Headers/Public/MYKit/UIImageView+CornerRadius.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UIImageView/UIImageView+CornerRadius.h -------------------------------------------------------------------------------- /Pods/Headers/Public/MYKit/UINavigationItem+Margin.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UINavigationItem/UINavigationItem+Margin.h -------------------------------------------------------------------------------- /Pods/Headers/Private/MYKit/NSDictionary+Collection.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/Foundation/NSDictionary/NSDictionary+Collection.h -------------------------------------------------------------------------------- /Pods/Headers/Private/MYKit/NSDictionary+SafeAccess.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/Foundation/NSDictionary/NSDictionary+SafeAccess.h -------------------------------------------------------------------------------- /Pods/Headers/Private/MYKit/NSObject+AssociatedObject.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/Foundation/NSObject/NSObject+AssociatedObject.h -------------------------------------------------------------------------------- /Pods/Headers/Private/MYKit/NSObject+UnknowSelector.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/SafeKit/UnknowSelector/NSObject+UnknowSelector.h -------------------------------------------------------------------------------- /Pods/Headers/Private/MYKit/UIAlertController+Blocks.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UIAlertController/UIAlertController+Blocks.h -------------------------------------------------------------------------------- /Pods/Headers/Private/MYKit/UIBarButtonItem+Addition.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UIBarButtonItem/UIBarButtonItem+Addition.h -------------------------------------------------------------------------------- /Pods/Headers/Private/MYKit/UINavigationBar+Addition.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UINavigationBar/UINavigationBar+Addition.h -------------------------------------------------------------------------------- /Pods/Headers/Private/MYKit/UINavigationItem+Loading.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UINavigationItem/UINavigationItem+Loading.h -------------------------------------------------------------------------------- /Pods/Headers/Private/MYKit/UINavigationItem+Margin.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UINavigationItem/UINavigationItem+Margin.h -------------------------------------------------------------------------------- /Pods/Headers/Private/Masonry/NSLayoutConstraint+MASDebugAdditions.h: -------------------------------------------------------------------------------- 1 | ../../../Masonry/Masonry/NSLayoutConstraint+MASDebugAdditions.h -------------------------------------------------------------------------------- /Pods/Headers/Public/MYKit/NSDictionary+Collection.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/Foundation/NSDictionary/NSDictionary+Collection.h -------------------------------------------------------------------------------- /Pods/Headers/Public/MYKit/NSDictionary+SafeAccess.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/Foundation/NSDictionary/NSDictionary+SafeAccess.h -------------------------------------------------------------------------------- /Pods/Headers/Public/MYKit/NSObject+AssociatedObject.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/Foundation/NSObject/NSObject+AssociatedObject.h -------------------------------------------------------------------------------- /Pods/Headers/Public/MYKit/TableViewPlaceHolderDelegate.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UITableView/TableViewPlaceHolderDelegate.h -------------------------------------------------------------------------------- /Pods/Headers/Public/MYKit/UIAlertController+Blocks.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UIAlertController/UIAlertController+Blocks.h -------------------------------------------------------------------------------- /Pods/Headers/Public/MYKit/UIBarButtonItem+Addition.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UIBarButtonItem/UIBarButtonItem+Addition.h -------------------------------------------------------------------------------- /Pods/Headers/Public/MYKit/UINavigationBar+Addition.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UINavigationBar/UINavigationBar+Addition.h -------------------------------------------------------------------------------- /Pods/Headers/Public/MYKit/UINavigationItem+Loading.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UINavigationItem/UINavigationItem+Loading.h -------------------------------------------------------------------------------- /Pods/Headers/Public/Masonry/NSLayoutConstraint+MASDebugAdditions.h: -------------------------------------------------------------------------------- 1 | ../../../Masonry/Masonry/NSLayoutConstraint+MASDebugAdditions.h -------------------------------------------------------------------------------- /Pods/Headers/Private/MYKit/MYSafeFoundationContainer.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/SafeKit/FoundationContainer/MYSafeFoundationContainer.h -------------------------------------------------------------------------------- /Pods/Headers/Private/MYKit/NSMutableArray+SafeAccess.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/Foundation/NSMutableArray/NSMutableArray+SafeAccess.h -------------------------------------------------------------------------------- /Pods/Headers/Private/MYKit/NSMutableDictionary+Safe.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/SafeKit/FoundationContainer/NSMutableDictionary+Safe.h -------------------------------------------------------------------------------- /Pods/Headers/Private/MYKit/NSNotificationCenter+SafeKit.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/SafeKit/Notification/NSNotificationCenter+SafeKit.h -------------------------------------------------------------------------------- /Pods/Headers/Private/MYKit/NSUserDefaults+SafeAccess.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/Foundation/NSUserDefaults/NSUserDefaults+SafeAccess.h -------------------------------------------------------------------------------- /Pods/Headers/Private/MYKit/TableViewPlaceHolderDelegate.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UITableView/TableViewPlaceHolderDelegate.h -------------------------------------------------------------------------------- /Pods/Headers/Private/MYKit/UIViewController+ClassName.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UIViewController/UIViewController+ClassName.h -------------------------------------------------------------------------------- /Pods/Headers/Public/MYKit/MYSafeFoundationContainer.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/SafeKit/FoundationContainer/MYSafeFoundationContainer.h -------------------------------------------------------------------------------- /Pods/Headers/Public/MYKit/NSMutableArray+SafeAccess.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/Foundation/NSMutableArray/NSMutableArray+SafeAccess.h -------------------------------------------------------------------------------- /Pods/Headers/Public/MYKit/NSMutableDictionary+Safe.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/SafeKit/FoundationContainer/NSMutableDictionary+Safe.h -------------------------------------------------------------------------------- /Pods/Headers/Public/MYKit/NSNotificationCenter+SafeKit.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/SafeKit/Notification/NSNotificationCenter+SafeKit.h -------------------------------------------------------------------------------- /Pods/Headers/Public/MYKit/NSUserDefaults+SafeAccess.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/Foundation/NSUserDefaults/NSUserDefaults+SafeAccess.h -------------------------------------------------------------------------------- /Pods/Headers/Public/MYKit/UICollectionView+PlaceHolder.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UICollectionView/UICollectionView+PlaceHolder.h -------------------------------------------------------------------------------- /Pods/Headers/Public/MYKit/UITextView+InputLengthCalculate.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UITextView/UITextView+InputLengthCalculate.h -------------------------------------------------------------------------------- /Pods/Headers/Public/MYKit/UIViewController+ClassName.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UIViewController/UIViewController+ClassName.h -------------------------------------------------------------------------------- /Pods/Headers/Private/MYKit/UICollectionView+PlaceHolder.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UICollectionView/UICollectionView+PlaceHolder.h -------------------------------------------------------------------------------- /Pods/Headers/Private/MYKit/UITextView+InputLengthCalculate.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UITextView/UITextView+InputLengthCalculate.h -------------------------------------------------------------------------------- /Pods/Headers/Private/MYKit/UIViewController+PageViewLevel.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UIViewController/UIViewController+PageViewLevel.h -------------------------------------------------------------------------------- /Pods/Headers/Public/MYKit/UIViewController+PageViewLevel.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UIViewController/UIViewController+PageViewLevel.h -------------------------------------------------------------------------------- /Pods/Headers/Public/MYKit/CollectionViewPlaceHolderDelegate.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UICollectionView/CollectionViewPlaceHolderDelegate.h -------------------------------------------------------------------------------- /Pods/Headers/Private/MYKit/CollectionViewPlaceHolderDelegate.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UICollectionView/CollectionViewPlaceHolderDelegate.h -------------------------------------------------------------------------------- /Pods/Headers/Private/MYKit/UINavigationController+Addition.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UINavigationController/UINavigationController+Addition.h -------------------------------------------------------------------------------- /Pods/Headers/Private/MYKit/UIViewController+PreviousController.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UIViewController/UIViewController+PreviousController.h -------------------------------------------------------------------------------- /Pods/Headers/Private/MYKit/UIViewController+TopViewController.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UIViewController/UIViewController+TopViewController.h -------------------------------------------------------------------------------- /Pods/Headers/Public/MYKit/UINavigationController+Addition.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UINavigationController/UINavigationController+Addition.h -------------------------------------------------------------------------------- /Pods/Headers/Public/MYKit/UIViewController+PreviousController.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UIViewController/UIViewController+PreviousController.h -------------------------------------------------------------------------------- /Pods/Headers/Public/MYKit/UIViewController+TopViewController.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UIViewController/UIViewController+TopViewController.h -------------------------------------------------------------------------------- /Pods/Headers/Private/MYKit/UIApplication+NetworkActivityIndicator.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UIApplication/UIApplication+NetworkActivityIndicator.h -------------------------------------------------------------------------------- /Pods/Headers/Public/MYKit/UIApplication+NetworkActivityIndicator.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UIApplication/UIApplication+NetworkActivityIndicator.h -------------------------------------------------------------------------------- /Pods/Headers/Public/MYKit/UINavigationController+BackButtonHandler.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UINavigationController/UINavigationController+BackButtonHandler.h -------------------------------------------------------------------------------- /Pods/Headers/Private/MYKit/UINavigationController+BackButtonHandler.h: -------------------------------------------------------------------------------- 1 | ../../../MYKit/MYKit/Classes/UIKit/UINavigationController/UINavigationController+BackButtonHandler.h -------------------------------------------------------------------------------- /Pods/Target Support Files/MYKit/MYKit-dummy.m: -------------------------------------------------------------------------------- 1 | #import 2 | @interface PodsDummy_MYKit : NSObject 3 | @end 4 | @implementation PodsDummy_MYKit 5 | @end 6 | -------------------------------------------------------------------------------- /MBSlideMenu/Assets.xcassets/AppIcon.appiconset/AppIcon29x29.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sunjinshuai/MBSlideMenu/HEAD/MBSlideMenu/Assets.xcassets/AppIcon.appiconset/AppIcon29x29.png -------------------------------------------------------------------------------- /MBSlideMenu/Assets.xcassets/AppIcon.appiconset/AppIcon57x57.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sunjinshuai/MBSlideMenu/HEAD/MBSlideMenu/Assets.xcassets/AppIcon.appiconset/AppIcon57x57.png -------------------------------------------------------------------------------- /Pods/Target Support Files/Masonry/Masonry-dummy.m: -------------------------------------------------------------------------------- 1 | #import 2 | @interface PodsDummy_Masonry : NSObject 3 | @end 4 | @implementation PodsDummy_Masonry 5 | @end 6 | -------------------------------------------------------------------------------- /MBSlideMenu/Assets.xcassets/AppIcon.appiconset/AppIcon29x29@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sunjinshuai/MBSlideMenu/HEAD/MBSlideMenu/Assets.xcassets/AppIcon.appiconset/AppIcon29x29@2x.png -------------------------------------------------------------------------------- /MBSlideMenu/Assets.xcassets/AppIcon.appiconset/AppIcon29x29@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sunjinshuai/MBSlideMenu/HEAD/MBSlideMenu/Assets.xcassets/AppIcon.appiconset/AppIcon29x29@3x.png -------------------------------------------------------------------------------- /MBSlideMenu/Assets.xcassets/AppIcon.appiconset/AppIcon40x40@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sunjinshuai/MBSlideMenu/HEAD/MBSlideMenu/Assets.xcassets/AppIcon.appiconset/AppIcon40x40@2x.png -------------------------------------------------------------------------------- /MBSlideMenu/Assets.xcassets/AppIcon.appiconset/AppIcon40x40@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sunjinshuai/MBSlideMenu/HEAD/MBSlideMenu/Assets.xcassets/AppIcon.appiconset/AppIcon40x40@3x.png -------------------------------------------------------------------------------- /MBSlideMenu/Assets.xcassets/AppIcon.appiconset/AppIcon57x57@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sunjinshuai/MBSlideMenu/HEAD/MBSlideMenu/Assets.xcassets/AppIcon.appiconset/AppIcon57x57@2x.png -------------------------------------------------------------------------------- /MBSlideMenu/Assets.xcassets/AppIcon.appiconset/AppIcon60x60@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sunjinshuai/MBSlideMenu/HEAD/MBSlideMenu/Assets.xcassets/AppIcon.appiconset/AppIcon60x60@2x.png -------------------------------------------------------------------------------- /MBSlideMenu/Assets.xcassets/AppIcon.appiconset/AppIcon60x60@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sunjinshuai/MBSlideMenu/HEAD/MBSlideMenu/Assets.xcassets/AppIcon.appiconset/AppIcon60x60@3x.png -------------------------------------------------------------------------------- /Pods/Target Support Files/Pods-MBSlideMenu/Pods-MBSlideMenu-dummy.m: -------------------------------------------------------------------------------- 1 | #import 2 | @interface PodsDummy_Pods_MBSlideMenu : NSObject 3 | @end 4 | @implementation PodsDummy_Pods_MBSlideMenu 5 | @end 6 | -------------------------------------------------------------------------------- /MBSlideMenu/Assets.xcassets/navigationbar_list_hl.imageset/navigationbar_list_hl.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sunjinshuai/MBSlideMenu/HEAD/MBSlideMenu/Assets.xcassets/navigationbar_list_hl.imageset/navigationbar_list_hl.png -------------------------------------------------------------------------------- /MBSlideMenu/Assets.xcassets/navigationbar_list_normal.imageset/navigationbar_list_normal.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sunjinshuai/MBSlideMenu/HEAD/MBSlideMenu/Assets.xcassets/navigationbar_list_normal.imageset/navigationbar_list_normal.png -------------------------------------------------------------------------------- /MBSlideMenu.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /Pods/Target Support Files/MYKit/MYKit-prefix.pch: -------------------------------------------------------------------------------- 1 | #ifdef __OBJC__ 2 | #import 3 | #else 4 | #ifndef FOUNDATION_EXPORT 5 | #if defined(__cplusplus) 6 | #define FOUNDATION_EXPORT extern "C" 7 | #else 8 | #define FOUNDATION_EXPORT extern 9 | #endif 10 | #endif 11 | #endif 12 | 13 | -------------------------------------------------------------------------------- /Pods/Target Support Files/Masonry/Masonry-prefix.pch: -------------------------------------------------------------------------------- 1 | #ifdef __OBJC__ 2 | #import 3 | #else 4 | #ifndef FOUNDATION_EXPORT 5 | #if defined(__cplusplus) 6 | #define FOUNDATION_EXPORT extern "C" 7 | #else 8 | #define FOUNDATION_EXPORT extern 9 | #endif 10 | #endif 11 | #endif 12 | 13 | -------------------------------------------------------------------------------- /MBSlideMenu.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /MBSlideMenu/ViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.h 3 | // MBSlideMenu 4 | // 5 | // Created by sunjinshuai on 2019/4/21. 6 | // Copyright © 2019 sunjinshuai. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface ViewController : UIViewController 12 | 13 | 14 | @end 15 | 16 | -------------------------------------------------------------------------------- /MBSlideMenu.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | IDEDidComputeMac32BitWarning 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /Pods/Masonry/Masonry/MASLayoutConstraint.m: -------------------------------------------------------------------------------- 1 | // 2 | // MASLayoutConstraint.m 3 | // Masonry 4 | // 5 | // Created by Jonas Budelmann on 3/08/13. 6 | // Copyright (c) 2013 Jonas Budelmann. All rights reserved. 7 | // 8 | 9 | #import "MASLayoutConstraint.h" 10 | 11 | @implementation MASLayoutConstraint 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /MBSlideMenu.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | IDEDidComputeMac32BitWarning 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /MBSlideMenu/AppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // AppDelegate.h 3 | // MBSlideMenu 4 | // 5 | // Created by sunjinshuai on 2019/4/21. 6 | // Copyright © 2019 sunjinshuai. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface AppDelegate : UIResponder 12 | 13 | @property (strong, nonatomic) UIWindow *window; 14 | 15 | 16 | @end 17 | 18 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/SafeKit/NSNull/NSNull+Safe.h: -------------------------------------------------------------------------------- 1 | // 2 | // NSNull+Safe.h 3 | // MYKit 4 | // 5 | // Created by sunjinshuai on 2019/4/17. 6 | // 7 | 8 | #import 9 | 10 | NS_ASSUME_NONNULL_BEGIN 11 | 12 | @interface NSNull (Safe) 13 | 14 | /** 15 | NSNull 16 | */ 17 | + (void)safeGuardNSNull; 18 | 19 | @end 20 | 21 | NS_ASSUME_NONNULL_END 22 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/SafeKit/KVO/NSObject+SafeKVO.h: -------------------------------------------------------------------------------- 1 | // 2 | // NSObject+SafeKVO.h 3 | // MYKitDemo 4 | // 5 | // Created by QMMac on 2018/7/30. 6 | // Copyright © 2018 com.51fanxing. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface NSObject (SafeKVO) 12 | 13 | /** 14 | 防护 KVO Crash 15 | */ 16 | + (void)registerClassPairMethodsInKVO; 17 | 18 | @end 19 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/SafeKit/NSTimer/NSTimer+Safe.h: -------------------------------------------------------------------------------- 1 | // 2 | // NSTimer+Safe.h 3 | // MYKitDemo 4 | // 5 | // Created by QMMac on 2018/7/30. 6 | // Copyright © 2018 com.51fanxing. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface NSTimer (Safe) 12 | 13 | /** 14 | 防护 Timer crash 15 | */ 16 | + (void)registerClassPairMethodsInTimer; 17 | 18 | @end 19 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/UIKit/UIImageView/UIImageView+CornerRadius.h: -------------------------------------------------------------------------------- 1 | // 2 | // UIImageView+CornerRadius.h 3 | // MYKitDemo 4 | // 5 | // Created by sunjinshuai on 2017/9/6. 6 | // Copyright © 2017年 com.51fanxing. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface UIImageView (CornerRadius) 12 | 13 | @property (nonatomic, assign) CGFloat myCornerRadius; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/UIKit/UIViewController/UIViewController+ClassName.h: -------------------------------------------------------------------------------- 1 | // 2 | // UIViewController+ClassName.h 3 | // MYKitDemo 4 | // 5 | // Created by sunjinshuai on 2018/3/23. 6 | // Copyright © 2018年 com.51fanxing. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface UIViewController (ClassName) 12 | 13 | + (void)displayClassName:(BOOL)yesOrNo; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/SafeKit/FoundationContainer/NSArray+Safe.h: -------------------------------------------------------------------------------- 1 | // 2 | // NSArray+Aspect.h 3 | // Footstone 4 | // 5 | // Created by 李阳 on 8/3/2018. 6 | // Copyright © 2018 BetrayalPromise. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | /** 12 | 防御数组入参崩溃 13 | */ 14 | @interface NSArray (Safe) 15 | 16 | + (void)registerClassPairMethodsInArray; 17 | 18 | @end 19 | 20 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/SafeKit/FoundationContainer/NSObject+Safe.h: -------------------------------------------------------------------------------- 1 | // 2 | // NSObject+Aspect.h 3 | // Footstone 4 | // 5 | // Created by 李阳 on 11/3/2018. 6 | // Copyright © 2018 BetrayalPromise. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | /** 12 | 防御 KVC KVO 崩溃 13 | */ 14 | @interface NSObject (Aspect) 15 | 16 | + (void)registerClassPairMethodsInObject; 17 | 18 | @end 19 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/SafeKit/FoundationContainer/NSString+Safe.h: -------------------------------------------------------------------------------- 1 | // 2 | // NSString+Safe.h 3 | // MYKitDemo 4 | // 5 | // Created by QMMac on 2018/7/30. 6 | // Copyright © 2018 com.51fanxing. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface NSString (Safe) 12 | 13 | /** 14 | String 防护 Crash 15 | */ 16 | + (void)registerClassPairMethodsInString; 17 | 18 | @end 19 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # Xcode 2 | .DS_Store 3 | */build/* 4 | !*.pbxuser 5 | !*.pbxproj 6 | !default.pbxuser 7 | *.mode1v3 8 | !default.mode1v3 9 | *.mode2v3 10 | !default.mode2v3 11 | *.perspectivev3 12 | !default.perspectivev3 13 | xcuserdata/ 14 | *.moved-aside 15 | DerivedData 16 | .idea/ 17 | *.hmap 18 | *.xccheckout 19 | !*.xcworkspace 20 | !default.xcworkspace 21 | 22 | #CocoaPods 23 | !Pods 24 | !Podfile 25 | !Podfile.lock 26 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/Foundation/NSObject/NSObject+Addition.h: -------------------------------------------------------------------------------- 1 | // 2 | // NSObject+Addition.h 3 | // MYKitDemo 4 | // 5 | // Created by QMMac on 2018/7/31. 6 | // Copyright © 2018 com.51fanxing. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface NSObject (Addition) 12 | 13 | /** 14 | 获取一个类的所有直接子类类簇 15 | */ 16 | - (NSArray *)findAllOf:(Class)defaultClass; 17 | 18 | @end 19 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/UIKit/UITextField/UITextField+InputLimit.h: -------------------------------------------------------------------------------- 1 | // 2 | // UITextField+InputLimit.h 3 | // MYKitDemo 4 | // 5 | // Created by sunjinshuai on 2017/9/7. 6 | // Copyright © 2017年 com.51fanxing. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface UITextField (InputLimit) 12 | 13 | @property (nonatomic, assign) NSInteger maxLength;//if <=0, no limit 14 | 15 | @end 16 | 17 | -------------------------------------------------------------------------------- /MBSlideMenu/main.m: -------------------------------------------------------------------------------- 1 | // 2 | // main.m 3 | // MBSlideMenu 4 | // 5 | // Created by sunjinshuai on 2019/4/21. 6 | // Copyright © 2019 sunjinshuai. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "AppDelegate.h" 11 | 12 | int main(int argc, char * argv[]) { 13 | @autoreleasepool { 14 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class])); 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/SafeKit/UnknowSelector/NSObject+UnknowSelector.h: -------------------------------------------------------------------------------- 1 | // 2 | // NSObject+UnknowSelector.h 3 | // MYKitDemo 4 | // 5 | // Created by QMMac on 2018/6/19. 6 | // Copyright © 2018 com.51fanxing. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface NSObject (UnknowSelector) 12 | 13 | /** 14 | 防护发送到未知的选择子到实例 15 | */ 16 | + (void)safeGuardUnrecognizedSelector; 17 | 18 | @end 19 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/UIKit/UIViewController/UIViewController+TopViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // UIViewController+TopViewController.h 3 | // MYKitDemo 4 | // 5 | // Created by sunjinshuai on 2018/3/14. 6 | // Copyright © 2018年 com.51fanxing. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface UIViewController (TopViewController) 12 | 13 | + (UIViewController *)topViewController; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/SafeKit/FoundationContainer/NSMutableArray+Safe.h: -------------------------------------------------------------------------------- 1 | // 2 | // NSArray+Aspect.h 3 | // Footstone 4 | // 5 | // Created by 李阳 on 8/3/2018. 6 | // Copyright © 2018 BetrayalPromise. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface NSMutableArray (Safe) 12 | 13 | /** 14 | 可变数组 crash 防护 15 | */ 16 | + (void)registerClassPairMethodsInMutableArray; 17 | 18 | @end 19 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/SafeKit/FoundationContainer/NSDictionary+Safe.h: -------------------------------------------------------------------------------- 1 | // 2 | // NSDictionary+Safe.h 3 | // Footstone 4 | // 5 | // Created by 李阳 on 4/5/2018. 6 | // Copyright © 2018 BetrayalPromise. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface NSDictionary (Safe) 12 | 13 | /** 14 | 字典 crash 防护 15 | */ 16 | + (void)registerClassPairMethodsInDictionary; 17 | 18 | @end 19 | 20 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/UIKit/UITableView/UITableView+PlaceHolder.h: -------------------------------------------------------------------------------- 1 | // 2 | // UITableView+PlaceHolder.h 3 | // MYKitDemo 4 | // 5 | // Created by QMMac on 2018/7/27. 6 | // Copyright © 2018 com.51fanxing. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface UITableView (PlaceHolder) 12 | 13 | /** 14 | my_reloadData 替换 reloadData,自动添加或删除 place holder 视图 15 | */ 16 | - (void)my_reloadData; 17 | 18 | @end 19 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/UIKit/UIResponder/UIResponder+Chain.h: -------------------------------------------------------------------------------- 1 | // 2 | // UIResponder+Chain.h 3 | // MYKitDemo 4 | // 5 | // Created by sunjinshuai on 2017/9/6. 6 | // Copyright © 2017年 com.51fanxing. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface UIResponder (Chain) 12 | 13 | /** 14 | * @brief 响应者链 15 | * 16 | * @return 响应者链 17 | */ 18 | - (NSString *)responderChainDescription; 19 | 20 | @end 21 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/SafeKit/FoundationContainer/NSMutableString+Safe.h: -------------------------------------------------------------------------------- 1 | // 2 | // NSMutableString+Safe.h 3 | // MYKitDemo 4 | // 5 | // Created by QMMac on 2018/7/30. 6 | // Copyright © 2018 com.51fanxing. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface NSMutableString (Safe) 12 | 13 | /** 14 | 防护 MutableString crash 15 | */ 16 | + (void)registerClassPairMethodsInMutableString; 17 | 18 | @end 19 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/SafeKit/Notification/NSNotificationCenter+SafeKit.h: -------------------------------------------------------------------------------- 1 | // 2 | // NSNotificationCenter+SafeKit.h 3 | // MYKitDemo 4 | // 5 | // Created by QMMac on 2018/6/19. 6 | // Copyright © 2018 com.51fanxing. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface NSNotificationCenter (SafeKit) 12 | 13 | /** 14 | 防护 iOS 8 通知 carsh 15 | */ 16 | + (void)safeGuardNotificationSelector; 17 | 18 | @end 19 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/UIKit/UIButton/UIButton+TouchAreaInsets.h: -------------------------------------------------------------------------------- 1 | // 2 | // UIButton+TouchAreaInsets.h 3 | // MYUtils 4 | // 5 | // Created by sunjinshuai on 2017/8/28. 6 | // Copyright © 2017年 com.51fanxing. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface UIButton (TouchAreaInsets) 12 | 13 | /** 14 | * @brief 设置按钮额外热区 15 | */ 16 | @property (nonatomic, assign) UIEdgeInsets touchAreaInsets; 17 | 18 | @end 19 | -------------------------------------------------------------------------------- /Pods/Masonry/Masonry/NSLayoutConstraint+MASDebugAdditions.h: -------------------------------------------------------------------------------- 1 | // 2 | // NSLayoutConstraint+MASDebugAdditions.h 3 | // Masonry 4 | // 5 | // Created by Jonas Budelmann on 3/08/13. 6 | // Copyright (c) 2013 Jonas Budelmann. All rights reserved. 7 | // 8 | 9 | #import "MASUtilities.h" 10 | 11 | /** 12 | * makes debug and log output of NSLayoutConstraints more readable 13 | */ 14 | @interface NSLayoutConstraint (MASDebugAdditions) 15 | 16 | @end 17 | -------------------------------------------------------------------------------- /MBSlideMenu/MBSlideMenu/MBSlideMenuViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // MBSlideMenuViewController.h 3 | // MBSlideMenu 4 | // 5 | // Created by sunjinshuai on 2019/4/21. 6 | // Copyright © 2019 sunjinshuai. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | NS_ASSUME_NONNULL_BEGIN 12 | 13 | @interface MBSlideMenuViewController : UIViewController 14 | 15 | // 展示 16 | - (void)showAnimation; 17 | 18 | @end 19 | 20 | NS_ASSUME_NONNULL_END 21 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/SafeKit/FoundationContainer/NSMutableDictionary+Safe.h: -------------------------------------------------------------------------------- 1 | // 2 | // NSDictionary+Safe.h 3 | // Footstone 4 | // 5 | // Created by 李阳 on 4/5/2018. 6 | // Copyright © 2018 BetrayalPromise. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface NSMutableDictionary (Safe) 12 | 13 | /** 14 | 可变字典 crash 防护 15 | */ 16 | + (void)registerClassPairMethodsInMutableDictionary; 17 | 18 | @end 19 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/SafeKit/FoundationContainer/MYSafeFoundationContainer.h: -------------------------------------------------------------------------------- 1 | // 2 | // MYSafeFoundationContainer.h 3 | // MYKitDemo 4 | // 5 | // Created by QMMac on 2018/6/26. 6 | // Copyright © 2018 com.51fanxing. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface MYSafeFoundationContainer : NSObject 12 | 13 | /** 14 | 防护 Foundation crash 15 | */ 16 | + (void)safeGuardContainersSelector; 17 | 18 | @end 19 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/UIKit/UICollectionView/UICollectionView+PlaceHolder.h: -------------------------------------------------------------------------------- 1 | // 2 | // UICollectionView+PlaceHolder.h 3 | // MYKitDemo 4 | // 5 | // Created by QMMac on 2018/7/27. 6 | // Copyright © 2018 com.51fanxing. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface UICollectionView (PlaceHolder) 12 | 13 | /** 14 | my_reloadData 替换 reloadData,自动添加或删除 place holder 视图 15 | */ 16 | - (void)my_reloadData; 17 | 18 | @end 19 | -------------------------------------------------------------------------------- /MBSlideMenu/Assets.xcassets/navigationbar_list_hl.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "filename" : "navigationbar_list_hl.png", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /MBSlideMenu/Assets.xcassets/navigationbar_list_normal.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "filename" : "navigationbar_list_normal.png", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/SafeKit/SafeKitShield.h: -------------------------------------------------------------------------------- 1 | // 2 | // SafeKitShield.h 3 | // MYKitDemo 4 | // 5 | // Created by QMMac on 2018/7/31. 6 | // Copyright © 2018 com.51fanxing. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | //! Project version number for Expecta. 12 | FOUNDATION_EXPORT double SafeKitShieldVersionNumber; 13 | 14 | //! Project version string for Expecta. 15 | FOUNDATION_EXPORT const unsigned char SafeKitShieldVersionString[]; 16 | 17 | #import "MYSafeKit.h" 18 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/UIKit/UILabel/UILabel+LineSpacing.h: -------------------------------------------------------------------------------- 1 | // 2 | // UILabel+LineSpacing.h 3 | // MYKitDemo 4 | // 5 | // Created by QMMac on 2018/7/20. 6 | // Copyright © 2018 com.51fanxing. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | /** 12 | 此分类适合Label文本指定的行数,行间距等 13 | */ 14 | @interface UILabel (LineSpacing) 15 | 16 | // 请不要将属性名称取为lineSpacing,UILabel已有此隐藏属性。 17 | @property (nonatomic, assign) CGFloat lineSpace; 18 | 19 | + (void)registerLineSpacingSelector; 20 | 21 | @end 22 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/UIKit/UIResponder/UIResponder+Router.m: -------------------------------------------------------------------------------- 1 | // 2 | // UIResponder+Router.m 3 | // MYKitDemo 4 | // 5 | // Created by sunjinshuai on 2017/9/6. 6 | // Copyright © 2017年 com.51fanxing. All rights reserved. 7 | // 8 | 9 | #import "UIResponder+Router.h" 10 | 11 | @implementation UIResponder (Router) 12 | 13 | - (void)routerEventWithName:(NSString *)eventName userInfo:(NSDictionary *)userInfo 14 | { 15 | [[self nextResponder] routerEventWithName:eventName userInfo:userInfo]; 16 | } 17 | 18 | @end 19 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/Foundation/NSBundle/NSBundle+AppIcon.h: -------------------------------------------------------------------------------- 1 | // 2 | // NSBundle+AppIcon.h 3 | // MYKitDemo 4 | // 5 | // Created by sunjinshuai on 2017/9/8. 6 | // Copyright © 2017年 com.51fanxing. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface NSBundle (AppIcon) 12 | 13 | /** 14 | 获取app的icon图标 15 | 16 | @return icon图标 17 | */ 18 | + (UIImage *)appIcon; 19 | 20 | /** 21 | 打印app里面所有启动图片名称信息 22 | 23 | @return 启动图片名称信息数组 24 | */ 25 | + (NSArray *)getAllLaunchImageInfo; 26 | 27 | @end 28 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/UIKit/UIViewController/UIViewController+PageViewLevel.h: -------------------------------------------------------------------------------- 1 | // 2 | // UIViewController+PageViewLevel.h 3 | // MYKitDemo 4 | // 5 | // Created by sunjinshuai on 2018/3/14. 6 | // Copyright © 2018年 com.51fanxing. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface UIViewController (PageViewLevel) 12 | 13 | /** 14 | 从0开始,记录真实的页面层级不受 15 | UITabBarController, 16 | UINavigationController包含关系影响 17 | */ 18 | @property (nonatomic, readonly) NSInteger pageViewLevel; 19 | 20 | @end 21 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/Foundation/NSMutableArray/NSMutableArray+Stack.h: -------------------------------------------------------------------------------- 1 | // 2 | // NSMutableArray+Stack.h 3 | // MYKitDemo 4 | // 5 | // Created by sunjinshuai on 2017/12/29. 6 | // Copyright © 2017年 com.51fanxing. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | NS_ASSUME_NONNULL_BEGIN 12 | 13 | @interface NSMutableArray (Stack) 14 | 15 | - (void)pushObject:(id)anObject; 16 | 17 | - (nullable id)popObject; 18 | 19 | - (nullable id)peekObject; 20 | 21 | @end 22 | 23 | NS_ASSUME_NONNULL_END 24 | 25 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/UIKit/UIView/UIView+SuperController.h: -------------------------------------------------------------------------------- 1 | // 2 | // UIView+SuperController.h 3 | // MYKitDemo 4 | // 5 | // Created by sunjinshuai on 2017/9/6. 6 | // Copyright © 2017年 com.51fanxing. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface UIView (SuperController) 12 | 13 | + (UIViewController *)viewController:(UIView *)view; 14 | + (UINavigationController *)navigationController:(UIView *)view; 15 | - (UIViewController *)viewController; 16 | - (UINavigationController *)navigationController; 17 | 18 | @end 19 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/UIKit/UIButton/UIButton+Indicator.h: -------------------------------------------------------------------------------- 1 | // 2 | // UIButton+Indicator.h 3 | // MYUtils 4 | // 5 | // Created by sunjinshuai on 2017/8/28. 6 | // Copyright © 2017年 com.51fanxing. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface UIButton (Indicator) 12 | 13 | /** 14 | This method will show the activity indicator in place of the button text. 15 | */ 16 | - (void)showIndicator; 17 | 18 | /** 19 | This method will remove the indicator and put thebutton text back in place. 20 | */ 21 | - (void)hideIndicator; 22 | 23 | @end 24 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/Core/MYKit.h: -------------------------------------------------------------------------------- 1 | // 2 | // MYKit.h 3 | // MYKitDemo 4 | // 5 | // Created by sunjinshuai on 2017/9/6. 6 | // Copyright © 2017年 com.51fanxing. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | //! Project version number for LPDAdditions. 12 | FOUNDATION_EXPORT double MYAdditionsVersionNumber; 13 | 14 | //! Project version string for LPDAdditions. 15 | FOUNDATION_EXPORT const unsigned char MYAdditionsVersionString[]; 16 | 17 | #import "MYSafeKit.h" 18 | #import "MYFoundationKit.h" 19 | #import "MYUIKit.h" 20 | #import "MYKitDefinition.h" 21 | 22 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/UIKit/UIResponder/UIResponder+Router.h: -------------------------------------------------------------------------------- 1 | // 2 | // UIResponder+Router.h 3 | // MYKitDemo 4 | // 5 | // Created by sunjinshuai on 2017/9/6. 6 | // Copyright © 2017年 com.51fanxing. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface UIResponder (Router) 12 | 13 | /** 14 | * 发送一个路由器消息, 对eventName感兴趣的 UIResponsder 可以对消息进行处理 15 | * 16 | * @param eventName 发生的事件名称 17 | * @param userInfo 传递消息时, 携带的数据, 数据传递过程中, 会有新的数据添加 18 | * 19 | */ 20 | - (void)routerEventWithName:(NSString *)eventName userInfo:(NSDictionary *)userInfo; 21 | 22 | @end 23 | 24 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/Foundation/NSMutableArray/NSMutableArray+Queue.h: -------------------------------------------------------------------------------- 1 | // 2 | // NSMutableArray+Queue.h 3 | // MYKitDemo 4 | // 5 | // Created by sunjinshuai on 2017/12/29. 6 | // Copyright © 2017年 com.51fanxing. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | NS_ASSUME_NONNULL_BEGIN 12 | 13 | @interface NSMutableArray (Queue) 14 | 15 | /** 16 | * @brief 队列的容量,大于0为有效容量,小于等于0表示不限制容量 17 | */ 18 | @property (nonatomic, assign) NSInteger queueSize; 19 | 20 | - (void)enqueueObject:(id)anObject; 21 | 22 | - (nullable id)dequeueObject; 23 | 24 | @end 25 | 26 | NS_ASSUME_NONNULL_END 27 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/UIKit/UITextView/UITextView+Select.h: -------------------------------------------------------------------------------- 1 | // 2 | // UITextView+Select.h 3 | // MYKitDemo 4 | // 5 | // Created by sunjinshuai on 2017/9/7. 6 | // Copyright © 2017年 com.51fanxing. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface UITextView (Select) 12 | 13 | /** 14 | * @brief 当前选中的字符串范围 15 | * 16 | * @return NSRange 17 | */ 18 | - (NSRange)selectedRange; 19 | /** 20 | * @brief 选中所有文字 21 | */ 22 | - (void)selectAllText; 23 | /** 24 | * @brief 选中指定范围的文字 25 | * 26 | * @param range NSRange范围 27 | */ 28 | - (void)setSelectedRange:(NSRange)range; 29 | 30 | @end 31 | -------------------------------------------------------------------------------- /Pods/Masonry/Masonry/MASLayoutConstraint.h: -------------------------------------------------------------------------------- 1 | // 2 | // MASLayoutConstraint.h 3 | // Masonry 4 | // 5 | // Created by Jonas Budelmann on 3/08/13. 6 | // Copyright (c) 2013 Jonas Budelmann. All rights reserved. 7 | // 8 | 9 | #import "MASUtilities.h" 10 | 11 | /** 12 | * When you are debugging or printing the constraints attached to a view this subclass 13 | * makes it easier to identify which constraints have been created via Masonry 14 | */ 15 | @interface MASLayoutConstraint : NSLayoutConstraint 16 | 17 | /** 18 | * a key to associate with this constraint 19 | */ 20 | @property (nonatomic, strong) id mas_key; 21 | 22 | @end 23 | -------------------------------------------------------------------------------- /Pods/Target Support Files/MYKit/MYKit.xcconfig: -------------------------------------------------------------------------------- 1 | CONFIGURATION_BUILD_DIR = ${PODS_CONFIGURATION_BUILD_DIR}/MYKit 2 | GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 3 | HEADER_SEARCH_PATHS = $(inherited) "${PODS_ROOT}/Headers/Private" "${PODS_ROOT}/Headers/Private/MYKit" "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/MYKit" 4 | PODS_BUILD_DIR = ${BUILD_DIR} 5 | PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) 6 | PODS_ROOT = ${SRCROOT} 7 | PODS_TARGET_SRCROOT = ${PODS_ROOT}/MYKit 8 | PRODUCT_BUNDLE_IDENTIFIER = org.cocoapods.${PRODUCT_NAME:rfc1034identifier} 9 | SKIP_INSTALL = YES 10 | -------------------------------------------------------------------------------- /Pods/Masonry/Masonry/MASCompositeConstraint.h: -------------------------------------------------------------------------------- 1 | // 2 | // MASCompositeConstraint.h 3 | // Masonry 4 | // 5 | // Created by Jonas Budelmann on 21/07/13. 6 | // Copyright (c) 2013 cloudling. All rights reserved. 7 | // 8 | 9 | #import "MASConstraint.h" 10 | #import "MASUtilities.h" 11 | 12 | /** 13 | * A group of MASConstraint objects 14 | */ 15 | @interface MASCompositeConstraint : MASConstraint 16 | 17 | /** 18 | * Creates a composite with a predefined array of children 19 | * 20 | * @param children child MASConstraints 21 | * 22 | * @return a composite constraint 23 | */ 24 | - (id)initWithChildren:(NSArray *)children; 25 | 26 | @end 27 | -------------------------------------------------------------------------------- /Pods/Target Support Files/Masonry/Masonry.xcconfig: -------------------------------------------------------------------------------- 1 | CONFIGURATION_BUILD_DIR = ${PODS_CONFIGURATION_BUILD_DIR}/Masonry 2 | GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 3 | HEADER_SEARCH_PATHS = $(inherited) "${PODS_ROOT}/Headers/Private" "${PODS_ROOT}/Headers/Private/Masonry" "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/Masonry" 4 | PODS_BUILD_DIR = ${BUILD_DIR} 5 | PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) 6 | PODS_ROOT = ${SRCROOT} 7 | PODS_TARGET_SRCROOT = ${PODS_ROOT}/Masonry 8 | PRODUCT_BUNDLE_IDENTIFIER = org.cocoapods.${PRODUCT_NAME:rfc1034identifier} 9 | SKIP_INSTALL = YES 10 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/UIKit/UILabel/UILabel+CountDown.h: -------------------------------------------------------------------------------- 1 | // 2 | // UILabel+CountDown.h 3 | // MYKitDemo 4 | // 5 | // Created by sunjinshuai on 2017/9/6. 6 | // Copyright © 2017年 com.51fanxing. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface UILabel (CountDown) 12 | 13 | /** 14 | 倒计时 15 | 16 | @param timeInterval 倒计时时长 17 | @param text 倒计时内容 18 | @param completion 倒计时之后回调 19 | */ 20 | - (void)scheduledTimerWithTimeInterval:(NSInteger)timeInterval 21 | countDownText:(NSString *)text 22 | completion:(void (^)(UILabel *countDownLabel))completion; 23 | 24 | @end 25 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/UIKit/UIButton/UIButton+CountDown.h: -------------------------------------------------------------------------------- 1 | // 2 | // UIButton+CountDown.h 3 | // MYKitDemo 4 | // 5 | // Created by sunjinshuai on 2017/9/6. 6 | // Copyright © 2017年 com.51fanxing. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface UIButton (CountDown) 12 | 13 | /** 14 | 倒计时 15 | 16 | @param timeInterval 倒计时时长 17 | @param text 倒计时内容 18 | @param completion 倒计时之后回调 19 | */ 20 | - (void)scheduledTimerWithTimeInterval:(NSInteger)timeInterval 21 | countDownText:(NSString *)text 22 | completion:(void (^)(UIButton *countDownButton))completion; 23 | 24 | @end 25 | 26 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/UIKit/UIViewController/UIViewController+PreviousController.h: -------------------------------------------------------------------------------- 1 | // 2 | // UIViewController+PreviousController.h 3 | // MYKitDemo 4 | // 5 | // Created by sunjinshuai on 2018/3/14. 6 | // Copyright © 2018年 com.51fanxing. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface UIViewController (PreviousController) 12 | 13 | /** 14 | 不支持UITabbarController切换记录前一个 15 | 扩展实现可通过 objc_setAssociatedObject(self, @selector(pc_previousController), sourcePageController, OBJC_ASSOCIATION_RETAIN_NONATOMIC) 设置 16 | 优先使用以设置的值 17 | */ 18 | @property (nonatomic, readonly) UIViewController *previousController; 19 | 20 | 21 | @end 22 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/Foundation/NSURL/NSURL+Param.h: -------------------------------------------------------------------------------- 1 | // 2 | // NSURL+Param.h 3 | // MYKitDemo 4 | // 5 | // Created by sunjinshuai on 2017/9/8. 6 | // Copyright © 2017年 com.51fanxing. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | NS_ASSUME_NONNULL_BEGIN 12 | 13 | @interface NSURL (Param) 14 | 15 | /** 16 | * @brief url参数转字典 17 | * 18 | * @return 参数转字典结果 19 | */ 20 | - (NSDictionary *)parameters; 21 | /** 22 | * @brief 根据参数名 取参数值 23 | * 24 | * @param parameterKey 参数名的key 25 | * 26 | * @return 参数值 27 | */ 28 | - (NSString *)valueForParameter:(NSString *)parameterKey; 29 | 30 | @end 31 | 32 | NS_ASSUME_NONNULL_END 33 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/UIKit/UIView/UIView+Gesture.h: -------------------------------------------------------------------------------- 1 | // 2 | // UIView+Gesture.h 3 | // MYKitDemo 4 | // 5 | // Created by sunjinshuai on 2017/9/6. 6 | // Copyright © 2017年 com.51fanxing. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | typedef void (^GestureActionBlock)(UIGestureRecognizer *gestureRecoginzer); 12 | 13 | @interface UIView (Gesture) 14 | 15 | /** 16 | * @brief 添加tap手势 17 | * 18 | * @param block 代码块 19 | */ 20 | - (void)addTapActionWithBlock:(GestureActionBlock)block; 21 | 22 | /** 23 | * @brief 添加长按手势 24 | * 25 | * @param block 代码块 26 | */ 27 | - (void)addLongPressActionWithBlock:(GestureActionBlock)block; 28 | 29 | @end 30 | -------------------------------------------------------------------------------- /Pods/Target Support Files/Pods-MBSlideMenu/Pods-MBSlideMenu.debug.xcconfig: -------------------------------------------------------------------------------- 1 | GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 2 | HEADER_SEARCH_PATHS = $(inherited) "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/MYKit" "${PODS_ROOT}/Headers/Public/Masonry" 3 | LIBRARY_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/MYKit" "${PODS_CONFIGURATION_BUILD_DIR}/Masonry" 4 | OTHER_LDFLAGS = $(inherited) -ObjC -l"MYKit" -l"Masonry" -framework "Foundation" -framework "UIKit" 5 | PODS_BUILD_DIR = ${BUILD_DIR} 6 | PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) 7 | PODS_PODFILE_DIR_PATH = ${SRCROOT}/. 8 | PODS_ROOT = ${SRCROOT}/Pods 9 | -------------------------------------------------------------------------------- /Pods/Target Support Files/Pods-MBSlideMenu/Pods-MBSlideMenu.release.xcconfig: -------------------------------------------------------------------------------- 1 | GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 2 | HEADER_SEARCH_PATHS = $(inherited) "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/MYKit" "${PODS_ROOT}/Headers/Public/Masonry" 3 | LIBRARY_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/MYKit" "${PODS_CONFIGURATION_BUILD_DIR}/Masonry" 4 | OTHER_LDFLAGS = $(inherited) -ObjC -l"MYKit" -l"Masonry" -framework "Foundation" -framework "UIKit" 5 | PODS_BUILD_DIR = ${BUILD_DIR} 6 | PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) 7 | PODS_PODFILE_DIR_PATH = ${SRCROOT}/. 8 | PODS_ROOT = ${SRCROOT}/Pods 9 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/Foundation/NSMutableArray/NSMutableArray+Stack.m: -------------------------------------------------------------------------------- 1 | // 2 | // NSMutableArray+Stack.m 3 | // MYKitDemo 4 | // 5 | // Created by sunjinshuai on 2017/12/29. 6 | // Copyright © 2017年 com.51fanxing. All rights reserved. 7 | // 8 | 9 | #import "NSMutableArray+Stack.h" 10 | 11 | @implementation NSMutableArray (Stack) 12 | 13 | - (void)pushObject:(id)anObject { 14 | [self addObject:anObject]; 15 | } 16 | 17 | - (id)popObject { 18 | id anObject = [self lastObject]; 19 | if (self.count > 0) { 20 | [self removeLastObject]; 21 | } 22 | return anObject; 23 | } 24 | 25 | - (id)peekObject { 26 | return [self lastObject]; 27 | } 28 | 29 | @end 30 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/UIKit/UIWindow/UIWindow+Hierarchy.h: -------------------------------------------------------------------------------- 1 | // 2 | // UIWindow+Hierarchy.h 3 | // MYKitDemo 4 | // 5 | // Created by sunjinshuai on 2017/9/7. 6 | // Copyright © 2017年 com.51fanxing. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface UIWindow (Hierarchy) 12 | 13 | /*! 14 | @method topMostController 15 | 16 | @return Returns the current Top Most ViewController in hierarchy. 17 | */ 18 | - (UIViewController *)topMostController; 19 | 20 | /*! 21 | @method currentViewController 22 | 23 | @return Returns the topViewController in stack of topMostController. 24 | */ 25 | - (UIViewController *)currentViewController; 26 | 27 | @end 28 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/UIKit/UINavigationItem/UINavigationItem+Margin.h: -------------------------------------------------------------------------------- 1 | // 2 | // UINavigationItem+Margin.h 3 | // MYKitDemo 4 | // 5 | // Created by sunjinshuai on 2017/9/6. 6 | // Copyright © 2017年 com.51fanxing. All rights reserved. 7 | // https://github.com/devxoul/UINavigationItem-Margin 8 | 9 | #import 10 | 11 | FOUNDATION_EXPORT double UINavigationItem_MarginVersionNumber; 12 | FOUNDATION_EXPORT const unsigned char UINavigationItem_MarginVersionString[]; 13 | 14 | @interface UINavigationItem (Margin) 15 | 16 | @property (nonatomic, assign) CGFloat leftMargin; 17 | @property (nonatomic, assign) CGFloat rightMargin; 18 | 19 | + (CGFloat)systemMargin; 20 | 21 | @end 22 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/Foundation/NSObject/NSObject+AssociatedObject.h: -------------------------------------------------------------------------------- 1 | // 2 | // NSObject+AssociatedObject.h 3 | // MYUtils 4 | // 5 | // Created by sunjinshuai on 2017/8/28. 6 | // Copyright © 2017年 com.51fanxing. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface NSObject (AssociatedObject) 12 | 13 | - (id)object:(SEL)key; 14 | 15 | - (void)setAssignObject:(id)object withKey:(SEL)key; 16 | 17 | - (void)setRetainNonatomicObject:(id)object withKey:(SEL)key; 18 | 19 | - (void)setCopyNonatomicObject:(id)object withKey:(SEL)key; 20 | 21 | - (void)setRetainObject:(id)object withKey:(SEL)key; 22 | 23 | - (void)setCopyObject:(id)object withKey:(SEL)key; 24 | 25 | 26 | @end 27 | -------------------------------------------------------------------------------- /Podfile.lock: -------------------------------------------------------------------------------- 1 | PODS: 2 | - Masonry (1.1.0) 3 | - MYKit (1.1.3): 4 | - MYKit/Core (= 1.1.3) 5 | - MYKit/Core (1.1.3): 6 | - MYKit/Foundation 7 | - MYKit/SafeKit 8 | - MYKit/UIKit 9 | - MYKit/Foundation (1.1.3) 10 | - MYKit/SafeKit (1.1.3): 11 | - MYKit/Foundation 12 | - MYKit/UIKit (1.1.3): 13 | - MYKit/Foundation 14 | 15 | DEPENDENCIES: 16 | - Masonry 17 | - MYKit 18 | 19 | SPEC REPOS: 20 | https://github.com/cocoapods/specs.git: 21 | - Masonry 22 | - MYKit 23 | 24 | SPEC CHECKSUMS: 25 | Masonry: 678fab65091a9290e40e2832a55e7ab731aad201 26 | MYKit: 36c106e574158ffbbf58cf1057f9ea71b713a653 27 | 28 | PODFILE CHECKSUM: 406d6de38ca6476dca78ce7672f4466984f38ff3 29 | 30 | COCOAPODS: 1.6.1 31 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/UIKit/UIColor/UIColor+Addition.h: -------------------------------------------------------------------------------- 1 | // 2 | // UIColor+Addition.h 3 | // MYKitDemo 4 | // 5 | // Created by sunjinshuai on 2017/9/6. 6 | // Copyright © 2017年 com.51fanxing. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface UIColor (Addition) 12 | 13 | /** 14 | Return a randomColor (just for test UI) 15 | 16 | @return randomColor 17 | */ 18 | + (UIColor *)randomColor; 19 | 20 | /** 21 | * @brief get color from hex string 22 | * 23 | * @param hexStr #RGB #ARGB #RRGGBB #AARRGGBB 24 | * 25 | * @return color 26 | */ 27 | + (UIColor *)colorWithHexString:(NSString *)hexStr; 28 | + (UIColor *)colorWithHexString:(NSString *)color alpha:(CGFloat)alphaValue; 29 | 30 | @end 31 | -------------------------------------------------------------------------------- /Pods/Manifest.lock: -------------------------------------------------------------------------------- 1 | PODS: 2 | - Masonry (1.1.0) 3 | - MYKit (1.1.3): 4 | - MYKit/Core (= 1.1.3) 5 | - MYKit/Core (1.1.3): 6 | - MYKit/Foundation 7 | - MYKit/SafeKit 8 | - MYKit/UIKit 9 | - MYKit/Foundation (1.1.3) 10 | - MYKit/SafeKit (1.1.3): 11 | - MYKit/Foundation 12 | - MYKit/UIKit (1.1.3): 13 | - MYKit/Foundation 14 | 15 | DEPENDENCIES: 16 | - Masonry 17 | - MYKit 18 | 19 | SPEC REPOS: 20 | https://github.com/cocoapods/specs.git: 21 | - Masonry 22 | - MYKit 23 | 24 | SPEC CHECKSUMS: 25 | Masonry: 678fab65091a9290e40e2832a55e7ab731aad201 26 | MYKit: 36c106e574158ffbbf58cf1057f9ea71b713a653 27 | 28 | PODFILE CHECKSUM: 406d6de38ca6476dca78ce7672f4466984f38ff3 29 | 30 | COCOAPODS: 1.6.1 31 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/Foundation/NSNumber/NSNumber+Addition.h: -------------------------------------------------------------------------------- 1 | // 2 | // NSNumber+Addition.h 3 | // MYKitDemo 4 | // 5 | // Created by sunjinshuai on 2018/3/13. 6 | // Copyright © 2018年 com.51fanxing. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | NS_ASSUME_NONNULL_BEGIN 12 | 13 | @interface NSNumber (Addition) 14 | 15 | /** 16 | Creates and returns an NSNumber object from a string. 17 | Valid format: @"12", @"12.345", @" -0xFF", @" .23e99 "... 18 | 19 | @param string The string described an number. 20 | 21 | @return an NSNumber when parse succeed, or nil if an error occurs. 22 | */ 23 | + (nullable NSNumber *)numberWithString:(NSString *)string; 24 | 25 | @end 26 | 27 | NS_ASSUME_NONNULL_END 28 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/UIKit/UIImageView/UIImageView+RectCorner.h: -------------------------------------------------------------------------------- 1 | // 2 | // UIImageView+RectCorner.h 3 | // MYKitDemo 4 | // 5 | // Created by sunjinshuai on 2018/3/20. 6 | // Copyright © 2018年 com.51fanxing. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface UIImageView (RectCorner) 12 | 13 | - (instancetype)initWithCornerRadiusAdvance:(CGFloat)cornerRadius 14 | rectCornerType:(UIRectCorner)rectCornerType; 15 | 16 | - (void)cornerRadiusAdvance:(CGFloat)cornerRadius rectCornerType:(UIRectCorner)rectCornerType; 17 | 18 | - (instancetype)initWithRoundingRectImageView; 19 | 20 | - (void)cornerRadiusRoundingRect; 21 | 22 | - (void)attachBorderWidth:(CGFloat)width color:(UIColor *)color; 23 | 24 | @end 25 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/UIKit/UINavigationController/UINavigationController+BackButtonHandler.h: -------------------------------------------------------------------------------- 1 | // 2 | // UINavigationController+BackButtonHandler.h 3 | // MYKitDemo 4 | // 5 | // Created by michael on 2018/12/15. 6 | // Copyright © 2018 com.51fanxing. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @protocol BackButtonHandlerProtocol 12 | @optional 13 | // 重写下面的方法以拦截导航栏返回按钮点击事件,返回 YES 则 pop,NO 则不 pop 14 | - (BOOL)navigationShouldPopOnBackButton; 15 | @end 16 | 17 | @interface UIViewController (ShouldPopOnBackButton) 18 | 19 | @end 20 | 21 | @interface UINavigationController (BackButtonHandler) 22 | 23 | - (BOOL)navigationBar:(UINavigationBar *)navigationBar 24 | shouldPopItem:(UINavigationItem *)item; 25 | 26 | @end 27 | -------------------------------------------------------------------------------- /MBSlideMenuTests/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | $(DEVELOPMENT_LANGUAGE) 7 | CFBundleExecutable 8 | $(EXECUTABLE_NAME) 9 | CFBundleIdentifier 10 | $(PRODUCT_BUNDLE_IDENTIFIER) 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundleName 14 | $(PRODUCT_NAME) 15 | CFBundlePackageType 16 | BNDL 17 | CFBundleShortVersionString 18 | 1.0 19 | CFBundleVersion 20 | 1 21 | 22 | 23 | -------------------------------------------------------------------------------- /MBSlideMenuUITests/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | $(DEVELOPMENT_LANGUAGE) 7 | CFBundleExecutable 8 | $(EXECUTABLE_NAME) 9 | CFBundleIdentifier 10 | $(PRODUCT_BUNDLE_IDENTIFIER) 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundleName 14 | $(PRODUCT_NAME) 15 | CFBundlePackageType 16 | BNDL 17 | CFBundleShortVersionString 18 | 1.0 19 | CFBundleVersion 20 | 1 21 | 22 | 23 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/UIKit/UITableView/TableViewPlaceHolderDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // TableViewPlaceHolderDelegate.h 3 | // MYKitDemo 4 | // 5 | // Created by QMMac on 2018/7/27. 6 | // Copyright © 2018 com.51fanxing. All rights reserved. 7 | // 8 | 9 | @protocol TableViewPlaceHolderDelegate 10 | 11 | @required 12 | /*! 13 | @brief make an empty overlay view when the tableView is empty 14 | @return an empty overlay view 15 | */ 16 | - (UIView *)makePlaceHolderView; 17 | 18 | @optional 19 | /*! 20 | @brief enable tableView scroll when place holder view is showing, it is disabled by default. 21 | @attention There is no need to return NO, it will be NO by default 22 | @return enable tableView scroll, you can only return YES 23 | */ 24 | - (BOOL)enableScrollWhenPlaceHolderViewShowing; 25 | 26 | @end 27 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/UIKit/UIView/UIView+FindSubView.h: -------------------------------------------------------------------------------- 1 | // 2 | // UIView+FindSubView.h 3 | // MYKitDemo 4 | // 5 | // Created by sunjinshuai on 2017/11/18. 6 | // Copyright © 2017年 com.51fanxing. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface UIView (FindSubView) 12 | 13 | /** 14 | * 判断两个view是否重叠 15 | */ 16 | + (BOOL)intersectsWithOtherView:(UIView *)otherView anotherView:(UIView *)anotherView; 17 | 18 | /** 19 | * @brief find all subviews 20 | * 21 | * @param cls class of subview 22 | */ 23 | - (NSArray *)subviewsWithClass:(Class)cls; 24 | 25 | /** 26 | * 判断self和view是否重叠 27 | */ 28 | - (BOOL)intersectsWithView:(UIView *)view; 29 | 30 | /** 31 | * 查找两个子视图的共同父视图 32 | */ 33 | + (NSArray *)findCommonSuperView:(UIView *)viewOne other:(UIView *)viewOther; 34 | 35 | @end 36 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/UIKit/UICollectionView/CollectionViewPlaceHolderDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // CollectionViewPlaceHolderDelegate.h 3 | // MYKitDemo 4 | // 5 | // Created by QMMac on 2018/7/27. 6 | // Copyright © 2018 com.51fanxing. All rights reserved. 7 | // 8 | 9 | @protocol CollectionViewPlaceHolderDelegate 10 | 11 | @required 12 | /*! 13 | @brief make an empty overlay view when the tableView is empty 14 | @return an empty overlay view 15 | */ 16 | - (UIView *)makePlaceHolderView; 17 | 18 | @optional 19 | /*! 20 | @brief enable collectionView scroll when place holder view is showing, it is disabled by default. 21 | @attention There is no need to return NO, it will be NO by default 22 | @return enable collectionView scroll, you can only return YES 23 | */ 24 | - (BOOL)enableScrollWhenPlaceHolderViewShowing; 25 | 26 | @end 27 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/UIKit/UINavigationBar/UINavigationBar+Addition.h: -------------------------------------------------------------------------------- 1 | // 2 | // UINavigationBar+Addition.h 3 | // MYKitDemo 4 | // 5 | // Created by sunjinshuai on 2018/3/22. 6 | // Copyright © 2018年 com.51fanxing. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface UINavigationBar (Addition) 12 | 13 | /** 14 | 设置导航栏所有BarButtonItem的透明度 15 | */ 16 | - (void)setBarButtonItemsAlpha:(CGFloat)alpha hasSystemBackIndicator:(BOOL)hasSystemBackIndicator; 17 | 18 | /** 19 | 设置Bar偏移 20 | @param translationY 偏移量 21 | */ 22 | - (void)setTranslationY:(CGFloat)translationY; 23 | 24 | /** 25 | 获取当前导航栏在垂直方向上偏移了多少 26 | */ 27 | - (CGFloat)getTranslationY; 28 | 29 | /** 30 | * 隐藏导航栏下面的分割线 31 | */ 32 | - (void)hideBottomHairline; 33 | 34 | /** 35 | * 显示导航栏下面的分割线 36 | */ 37 | - (void)showBottomHairline; 38 | 39 | @end 40 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/Foundation/NSBundle/NSBundle+AppIcon.m: -------------------------------------------------------------------------------- 1 | // 2 | // NSBundle+AppIcon.m 3 | // MYKitDemo 4 | // 5 | // Created by sunjinshuai on 2017/9/8. 6 | // Copyright © 2017年 com.51fanxing. All rights reserved. 7 | // 8 | 9 | #import "NSBundle+AppIcon.h" 10 | 11 | @implementation NSBundle (AppIcon) 12 | 13 | + (UIImage *)appIcon { 14 | NSDictionary *infoPlist = [[self mainBundle] infoDictionary]; 15 | NSString *appIcon = [[infoPlist valueForKeyPath:@"CFBundleIcons.CFBundlePrimaryIcon.CFBundleIconFiles"] lastObject]; 16 | return [UIImage imageNamed:appIcon]; 17 | } 18 | 19 | + (NSArray *)getAllLaunchImageInfo { 20 | NSDictionary *infoDict = [[self mainBundle] infoDictionary]; 21 | // 获取所有启动图片信息数组 22 | NSArray *launchImagesArray = infoDict[@"UILaunchImages"]; 23 | return launchImagesArray; 24 | } 25 | 26 | @end 27 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/UIKit/UIApplication/UIApplication+NetworkActivityIndicator.m: -------------------------------------------------------------------------------- 1 | // 2 | // UIApplication+NetworkActivityIndicator.m 3 | // MYKitDemo 4 | // 5 | // Created by sunjinshuai on 2017/9/7. 6 | // Copyright © 2017年 com.51fanxing. All rights reserved. 7 | // 8 | 9 | #import "UIApplication+NetworkActivityIndicator.h" 10 | #import 11 | 12 | @implementation UIApplication (NetworkActivityIndicator) 13 | 14 | static volatile int32_t numberOfActiveNetworkConnections; 15 | 16 | #pragma mark Public API 17 | 18 | - (void)beganNetworkActivity 19 | { 20 | self.networkActivityIndicatorVisible = OSAtomicAdd32(1, &numberOfActiveNetworkConnections) > 0; 21 | } 22 | 23 | - (void)endedNetworkActivity 24 | { 25 | self.networkActivityIndicatorVisible = OSAtomicAdd32(-1, &numberOfActiveNetworkConnections) > 0; 26 | } 27 | 28 | @end 29 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/UIKit/UIView/UIView+Position.h: -------------------------------------------------------------------------------- 1 | // 2 | // UIView+Position.h 3 | // MYKitDemo 4 | // 5 | // Created by sunjinshuai on 2017/9/6. 6 | // Copyright © 2017年 com.51fanxing. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface UIView (Position) 12 | 13 | @property (nonatomic, assign) CGFloat x; 14 | @property (nonatomic, assign) CGFloat y; 15 | @property (nonatomic, assign) CGFloat width; 16 | @property (nonatomic, assign) CGFloat height; 17 | @property (nonatomic, assign) CGSize size; 18 | @property (nonatomic, assign) CGPoint origin; 19 | @property (nonatomic, assign) CGFloat centerX; 20 | @property (nonatomic, assign) CGFloat centerY; 21 | @property (nonatomic, assign) CGFloat left; 22 | @property (nonatomic, assign) CGFloat top; 23 | @property (nonatomic, assign) CGFloat right; 24 | @property (nonatomic, assign) CGFloat bottom; 25 | 26 | @end 27 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/SafeKit/Record/MYSafeKitRecord.h: -------------------------------------------------------------------------------- 1 | // 2 | // MYSafeKitRecord.h 3 | // MYKitDemo 4 | // 5 | // Created by QMMac on 2018/7/31. 6 | // Copyright © 2018 com.51fanxing. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "MYSafeKit.h" 11 | 12 | @interface MYSafeKitRecord : NSObject 13 | 14 | /** 15 | 注册汇报中心 16 | 17 | @param record 汇报中心 18 | */ 19 | + (void)registerRecordHandler:(nullable id)record; 20 | 21 | /** 22 | 汇报Crash 23 | 24 | @param reason Sting 原因, maybe nil 25 | */ 26 | + (void)recordFatalWithReason:(nullable NSString *)reason 27 | errorType:(MYSafeKitShieldType)type; 28 | 29 | /** 30 | 获取调用堆栈信息 31 | 32 | @param tipString 错误信息 33 | */ 34 | + (NSString *)getErrorMessageWithTipString:(NSString *)tipString; 35 | 36 | /** 37 | alter 错误堆栈信息 38 | */ 39 | + (void)safeKit_showAlterWithMessage:(NSString *)messsage; 40 | 41 | @end 42 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/UIKit/UIImage/UIImage+Addition.h: -------------------------------------------------------------------------------- 1 | // 2 | // UIImage+Addition.h 3 | // FXKitExampleDemo 4 | // 5 | // Created by sunjinshuai on 2017/7/19. 6 | // Copyright © 2017年 com.51fanxing. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | NS_ASSUME_NONNULL_BEGIN 12 | 13 | @interface UIImage (Addition) 14 | 15 | /** 16 | * @brief 根据name获取GIF图片 17 | * 18 | * @param name 图片名称 19 | * 20 | * @return 返回处理后的图片 21 | */ 22 | + (nullable UIImage *)animatedGIFNamed:(NSString *)name; 23 | 24 | /** 25 | * @brief 根据data获取GIF图片 26 | * 27 | * @param data 图片数据流 28 | * 29 | * @return 返回处理后的图片 30 | */ 31 | + (nullable UIImage *)animatedGIFWithData:(NSData *)data; 32 | 33 | /** 34 | * @brief 根据图片路径获取图片 35 | * 36 | * @param imageName 图片路径名称 37 | * 38 | * @return 返回处理后的图片 39 | */ 40 | + (nullable UIImage *)imageNoCacheWithName:(NSString *)imageName; 41 | 42 | @end 43 | 44 | NS_ASSUME_NONNULL_END 45 | 46 | -------------------------------------------------------------------------------- /Pods/Masonry/Masonry/Masonry.h: -------------------------------------------------------------------------------- 1 | // 2 | // Masonry.h 3 | // Masonry 4 | // 5 | // Created by Jonas Budelmann on 20/07/13. 6 | // Copyright (c) 2013 cloudling. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | //! Project version number for Masonry. 12 | FOUNDATION_EXPORT double MasonryVersionNumber; 13 | 14 | //! Project version string for Masonry. 15 | FOUNDATION_EXPORT const unsigned char MasonryVersionString[]; 16 | 17 | #import "MASUtilities.h" 18 | #import "View+MASAdditions.h" 19 | #import "View+MASShorthandAdditions.h" 20 | #import "ViewController+MASAdditions.h" 21 | #import "NSArray+MASAdditions.h" 22 | #import "NSArray+MASShorthandAdditions.h" 23 | #import "MASConstraint.h" 24 | #import "MASCompositeConstraint.h" 25 | #import "MASViewAttribute.h" 26 | #import "MASViewConstraint.h" 27 | #import "MASConstraintMaker.h" 28 | #import "MASLayoutConstraint.h" 29 | #import "NSLayoutConstraint+MASDebugAdditions.h" 30 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/Foundation/NSString/NSString+Trims.h: -------------------------------------------------------------------------------- 1 | // 2 | // NSString+Trims.h 3 | // MYKitDemo 4 | // 5 | // Created by sunjinshuai on 2017/9/8. 6 | // Copyright © 2017年 com.51fanxing. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface NSString (Trims) 12 | 13 | /** 14 | 去除回车键 15 | */ 16 | + (NSString *)stirngByTrimReturnKey:(NSString *)string; 17 | 18 | /** 19 | Trim blank characters (space and newline) in head and tail. 20 | @return the trimmed string. 21 | */ 22 | - (NSString *)stringByTrim; 23 | 24 | /** 25 | * @brief 去除字符串与空行 26 | * 27 | * @return 去除字符串与空行的字符串 28 | */ 29 | - (NSString *)trimmingWhitespaceAndNewlines; 30 | 31 | /** 32 | * @brief 清除html标签 33 | * 34 | * @return 清除后的结果 35 | */ 36 | - (NSString *)stringByStrippingHTML; 37 | /** 38 | * @brief 清除js脚本 39 | * 40 | * @return 清楚js后的结果 41 | */ 42 | - (NSString *)stringByRemovingScriptsAndStrippingHTML; 43 | 44 | @end 45 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/UIKit/UIView/UIView+CornerRadii.h: -------------------------------------------------------------------------------- 1 | // 2 | // UIView+CornerRadii.h 3 | // LPDCrowdsource 4 | // 5 | // Created by eMr.Wang on 16/1/29. 6 | // Copyright © 2016年 elm. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | NS_ASSUME_NONNULL_BEGIN 12 | 13 | @interface UIView (CornerRadii) 14 | 15 | /** 16 | 快速切圆角,带边框、边框颜色 17 | 18 | @param roundingCorners 圆角样式 19 | @param cornerRadii 圆角角度 20 | */ 21 | - (void)setCornerRadii:(CGFloat)cornerRadii 22 | roundingCorners:(UIRectCorner)roundingCorners; 23 | 24 | /** 25 | 快速切圆角,带边框、边框颜色 26 | 27 | @param roundingCorners 圆角样式 28 | @param cornerRadii 圆角角度 29 | @param borderWidth 边线宽度 30 | @param borderColor 边线颜色 31 | */ 32 | - (void)setCornerRadii:(CGFloat)cornerRadii 33 | roundingCorners:(UIRectCorner)roundingCorners 34 | borderWidth:(CGFloat)borderWidth 35 | borderColor:(UIColor *)borderColor; 36 | 37 | @end 38 | 39 | NS_ASSUME_NONNULL_END 40 | -------------------------------------------------------------------------------- /Pods/MYKit/README.md: -------------------------------------------------------------------------------- 1 | # MYKit 2 | 3 | [![CI Status](https://img.shields.io/travis/sunjinshuai/MYKit.svg?style=flat)](https://travis-ci.org/sunjinshuai/MYKit) 4 | [![Version](https://img.shields.io/cocoapods/v/MYKit.svg?style=flat)](https://cocoapods.org/pods/MYKit) 5 | [![License](https://img.shields.io/cocoapods/l/MYKit.svg?style=flat)](https://cocoapods.org/pods/MYKit) 6 | [![Platform](https://img.shields.io/cocoapods/p/MYKit.svg?style=flat)](https://cocoapods.org/pods/MYKit) 7 | 8 | ## Example 9 | 10 | To run the example project, clone the repo, and run `pod install` from the Example directory first. 11 | 12 | ## Requirements 13 | 14 | ## Installation 15 | 16 | MYKit is available through [CocoaPods](https://cocoapods.org). To install 17 | it, simply add the following line to your Podfile: 18 | 19 | ```ruby 20 | pod 'MYKit' 21 | ``` 22 | 23 | ## Author 24 | 25 | sunjinshuai, sunjinshuai@aikucun.com 26 | 27 | ## License 28 | 29 | MYKit is available under the MIT license. See the LICENSE file for more info. 30 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/Foundation/NSObject/NSObject+Addition.m: -------------------------------------------------------------------------------- 1 | // 2 | // NSObject+Addition.m 3 | // MYKitDemo 4 | // 5 | // Created by QMMac on 2018/7/31. 6 | // Copyright © 2018 com.51fanxing. All rights reserved. 7 | // 8 | 9 | #import "NSObject+Addition.h" 10 | #import 11 | 12 | @implementation NSObject (Addition) 13 | 14 | 15 | - (NSArray *)findAllOf:(Class)defaultClass { 16 | 17 | int count = objc_getClassList(NULL, 0); 18 | if (count <= 0) { 19 | @throw @"Couldn't retrieve Obj-C class-list"; 20 | return @[defaultClass]; 21 | } 22 | 23 | NSMutableArray *output = @[].mutableCopy; 24 | Class *classes = (Class *)malloc(sizeof(Class) * count); 25 | objc_getClassList(classes, count); 26 | for (int i = 0; i < count; ++i) { 27 | if (defaultClass == class_getSuperclass(classes[i])) { //子类 28 | [output addObject:classes[i]]; 29 | } 30 | } 31 | free(classes); 32 | return output.copy; 33 | } 34 | 35 | @end 36 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/UIKit/UIView/UIView+Addition.h: -------------------------------------------------------------------------------- 1 | // 2 | // UIView+Addition.h 3 | // MYKitDemo 4 | // 5 | // Created by sunjinshuai on 2017/12/29. 6 | // Copyright © 2017年 com.51fanxing. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | typedef NS_ENUM(NSInteger, MYGradientDirection) { 12 | MYGradientDirectionTopLeft = 0, 13 | MYGradientDirectionTop = 1, 14 | MYGradientDirectionLeft = 2, 15 | }; 16 | 17 | @interface UIView (Addition) 18 | 19 | - (void)setGradientBackgroundColors:(NSArray *)colorArray direction:(MYGradientDirection)direction; 20 | 21 | - (void)setGradientBackgroundColors:(NSArray *)colorArray; 22 | 23 | - (void)setGradientBackgroundColorFrom:(UIColor *)fromColor toColor:(UIColor *)toColor; 24 | 25 | /*! 26 | * @method snapshotImage 27 | * 截取view 28 | */ 29 | - (UIImage *)snapshotImage; 30 | 31 | /*! 32 | * @method snapshotImageInRect: 33 | * 截取view中rect范围的视图 34 | */ 35 | - (UIImage *)snapshotImageInRect:(CGRect)rect; 36 | 37 | @end 38 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/UIKit/UIButton/UIButton+Submitting.h: -------------------------------------------------------------------------------- 1 | // 2 | // UIButton+Submitting.h 3 | // MYUtils 4 | // 5 | // Created by sunjinshuai on 2017/8/28. 6 | // Copyright © 2017年 com.51fanxing. All rights reserved. 7 | // https://github.com/foxsofter/FXCategories 8 | 9 | #import 10 | 11 | NS_ASSUME_NONNULL_BEGIN 12 | 13 | /** 14 | * @author foxsofter, 15-09-24 10:09:49 15 | * 16 | * @brief 为UIButton添加提交状态,通过ActivityIndicator表示 17 | */ 18 | @interface UIButton (Submitting) 19 | 20 | /** 21 | * @brief 按钮点击后,禁用按钮并居中显示ActivityIndicator 22 | */ 23 | - (void)beginSubmitting; 24 | 25 | /** 26 | * @brief 按钮点击后,禁用按钮并在按钮上显示ActivityIndicator,以及title 27 | * 28 | * @param title 按钮上显示的文字 29 | */ 30 | - (void)beginSubmitting:(NSString * _Nullable)title; 31 | 32 | /** 33 | * @brief 按钮点击后,恢复按钮点击前的状态 34 | */ 35 | - (void)endSubmitting; 36 | 37 | /** 38 | * @brief 按钮是否正在提交中 39 | */ 40 | @property (nonatomic, readonly, getter=isSubmitting) BOOL submitting; 41 | 42 | @end 43 | 44 | NS_ASSUME_NONNULL_END 45 | -------------------------------------------------------------------------------- /Pods/Masonry/Masonry/ViewController+MASAdditions.h: -------------------------------------------------------------------------------- 1 | // 2 | // UIViewController+MASAdditions.h 3 | // Masonry 4 | // 5 | // Created by Craig Siemens on 2015-06-23. 6 | // 7 | // 8 | 9 | #import "MASUtilities.h" 10 | #import "MASConstraintMaker.h" 11 | #import "MASViewAttribute.h" 12 | 13 | #ifdef MAS_VIEW_CONTROLLER 14 | 15 | @interface MAS_VIEW_CONTROLLER (MASAdditions) 16 | 17 | /** 18 | * following properties return a new MASViewAttribute with appropriate UILayoutGuide and NSLayoutAttribute 19 | */ 20 | @property (nonatomic, strong, readonly) MASViewAttribute *mas_topLayoutGuide; 21 | @property (nonatomic, strong, readonly) MASViewAttribute *mas_bottomLayoutGuide; 22 | @property (nonatomic, strong, readonly) MASViewAttribute *mas_topLayoutGuideTop; 23 | @property (nonatomic, strong, readonly) MASViewAttribute *mas_topLayoutGuideBottom; 24 | @property (nonatomic, strong, readonly) MASViewAttribute *mas_bottomLayoutGuideTop; 25 | @property (nonatomic, strong, readonly) MASViewAttribute *mas_bottomLayoutGuideBottom; 26 | 27 | 28 | @end 29 | 30 | #endif 31 | -------------------------------------------------------------------------------- /MBSlideMenuTests/MBSlideMenuTests.m: -------------------------------------------------------------------------------- 1 | // 2 | // MBSlideMenuTests.m 3 | // MBSlideMenuTests 4 | // 5 | // Created by sunjinshuai on 2019/4/21. 6 | // Copyright © 2019 sunjinshuai. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface MBSlideMenuTests : XCTestCase 12 | 13 | @end 14 | 15 | @implementation MBSlideMenuTests 16 | 17 | - (void)setUp { 18 | // Put setup code here. This method is called before the invocation of each test method in the class. 19 | } 20 | 21 | - (void)tearDown { 22 | // Put teardown code here. This method is called after the invocation of each test method in the class. 23 | } 24 | 25 | - (void)testExample { 26 | // This is an example of a functional test case. 27 | // Use XCTAssert and related functions to verify your tests produce the correct results. 28 | } 29 | 30 | - (void)testPerformanceExample { 31 | // This is an example of a performance test case. 32 | [self measureBlock:^{ 33 | // Put the code you want to measure the time of here. 34 | }]; 35 | } 36 | 37 | @end 38 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/Foundation/NSDictionary/NSDictionary+Collection.h: -------------------------------------------------------------------------------- 1 | // 2 | // NSDictionary+Collection.h 3 | // Collection 4 | // 5 | // Created by Jordi Puigdellívol on 10/8/16. 6 | // Copyright © 2016 Revo. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface NSDictionary (Collection) 12 | 13 | + (NSDictionary * _Nullable)fromData:(NSData* _Nullable)data; 14 | + (NSDictionary * _Nullable)fromString:(NSString* _Nullable)string; 15 | - (NSString * _Nullable)toString; 16 | - (NSDictionary * _Nullable)except:(NSArray* _Nullable)exceptKeys; 17 | - (NSDictionary* _Nullable)only:(NSArray* _Nullable)keysToKeep; 18 | 19 | - (void)each:(void(^ _Nullable)(id _Nonnull key, id _Nonnull object))operation; 20 | - (NSDictionary* _Nullable)filter:(BOOL (^ _Nullable)(id _Nonnull key, id _Nonnull object))condition; 21 | - (NSDictionary* _Nullable)reject:(BOOL (^ _Nullable)(id _Nonnull key, id _Nonnull object))condition; 22 | - (NSDictionary* _Nullable)map:(id _Nonnull (^ _Nullable)(id _Nonnull key, id _Nonnull object))callback; 23 | @end 24 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/Foundation/NSUserDefaults/NSUserDefaults+SafeAccess.h: -------------------------------------------------------------------------------- 1 | // 2 | // NSUserDefaults+SafeAccess.h 3 | // MYUtils 4 | // 5 | // Created by sunjinshuai on 2017/8/28. 6 | // Copyright © 2017年 com.51fanxing. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | NS_ASSUME_NONNULL_BEGIN 12 | 13 | @interface NSUserDefaults (SafeAccess) 14 | 15 | + (NSString *)stringForKey:(NSString *)defaultName; 16 | 17 | + (NSArray *)arrayForKey:(NSString *)defaultName; 18 | 19 | + (NSDictionary *)dictionaryForKey:(NSString *)defaultName; 20 | 21 | + (NSData *)dataForKey:(NSString *)defaultName; 22 | 23 | + (NSArray *)stringArrayForKey:(NSString *)defaultName; 24 | 25 | + (NSInteger)integerForKey:(NSString *)defaultName; 26 | 27 | + (float)floatForKey:(NSString *)defaultName; 28 | 29 | + (double)doubleForKey:(NSString *)defaultName; 30 | 31 | + (BOOL)boolForKey:(NSString *)defaultName; 32 | 33 | + (NSURL *)URLForKey:(NSString *)defaultName; 34 | 35 | + (void)setObject:(id)value forKey:(NSString *)defaultName; 36 | 37 | @end 38 | 39 | NS_ASSUME_NONNULL_END 40 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/Foundation/NSNumber/NSNumber+Round.h: -------------------------------------------------------------------------------- 1 | // 2 | // NSNumber+Round.h 3 | // MYUtils 4 | // 5 | // Created by sunjinshuai on 2017/8/28. 6 | // Copyright © 2017年 com.51fanxing. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface NSNumber (Round) 12 | 13 | /* 展示 */ 14 | - (NSString *)toDisplayNumberWithDigit:(NSInteger)digit; 15 | - (NSString *)toDisplayPercentageWithDigit:(NSInteger)digit; 16 | 17 | /* 四舍五入 */ 18 | /** 19 | * @brief 四舍五入 20 | * 21 | * @param digit 限制最大位数 22 | * 23 | * @return 结果 24 | */ 25 | - (NSNumber *)doRoundWithDigit:(NSUInteger)digit; 26 | /** 27 | * @brief 取上整 28 | * 29 | * @param digit 限制最大位数 30 | * 31 | * @return 结果 32 | */ 33 | - (NSNumber *)doCeilWithDigit:(NSUInteger)digit; 34 | /** 35 | * @brief 取下整 36 | * 37 | * @param digit 限制最大位数 38 | * 39 | * @return 结果 40 | */ 41 | - (NSNumber *)doFloorWithDigit:(NSUInteger)digit; 42 | 43 | /** 44 | * 将当前金额数值转成中文繁体金额 45 | * 1234567890.31 <=> 壹拾貳億叁仟肆佰伍拾陸萬柒仟捌佰玖拾圓叁角壹分 46 | */ 47 | - (NSString *)traditionalMoneyString; 48 | 49 | @end 50 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/Foundation/NSMutableArray/NSMutableArray+SafeAccess.h: -------------------------------------------------------------------------------- 1 | // 2 | // NSMutableArray+SafeAccess.h 3 | // MYKitDemo 4 | // 5 | // Created by sunjinshuai on 2018/3/1. 6 | // Copyright © 2018年 com.51fanxing. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface NSMutableArray (SafeAccess) 12 | 13 | /** 14 | 安全的添加一个对象 15 | 16 | @param object 对象 17 | */ 18 | - (void)addSafeObject:(id)object; 19 | 20 | /** 21 | 根据索引安全的插入一个对象 22 | 23 | @param object 对象 24 | @param index NSUInteger 25 | */ 26 | - (void)insertSafeObject:(id)object 27 | index:(NSUInteger)index; 28 | 29 | /** 30 | 根据索引安全的插入一个数组 31 | 32 | @param array NSArray 33 | @param indexSet NSIndexSet 34 | */ 35 | - (void)insertSafeArray:(NSArray *)array 36 | indexSet:(NSIndexSet *)indexSet; 37 | 38 | /** 39 | 根据索引安全的删除一个对象 40 | 41 | @param index NSUInteger 42 | */ 43 | - (void)safeRemoveObjectAtIndex:(NSUInteger)index; 44 | 45 | /** 46 | 根据范围安全的删除 47 | 48 | @param range NSRange 49 | */ 50 | - (void)safeRemoveObjectsInRange:(NSRange)range; 51 | 52 | @end 53 | -------------------------------------------------------------------------------- /Pods/MYKit/LICENSE: -------------------------------------------------------------------------------- 1 | Copyright (c) 2019 sunjinshuai 2 | 3 | Permission is hereby granted, free of charge, to any person obtaining a copy 4 | of this software and associated documentation files (the "Software"), to deal 5 | in the Software without restriction, including without limitation the rights 6 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | copies of the Software, and to permit persons to whom the Software is 8 | furnished to do so, subject to the following conditions: 9 | 10 | The above copyright notice and this permission notice shall be included in 11 | all copies or substantial portions of the Software. 12 | 13 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19 | THE SOFTWARE. 20 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/UIKit/UIWindow/UIWindow+Hierarchy.m: -------------------------------------------------------------------------------- 1 | // 2 | // UIWindow+Hierarchy.m 3 | // MYKitDemo 4 | // 5 | // Created by sunjinshuai on 2017/9/7. 6 | // Copyright © 2017年 com.51fanxing. All rights reserved. 7 | // 8 | 9 | #import "UIWindow+Hierarchy.h" 10 | 11 | @implementation UIWindow (Hierarchy) 12 | 13 | - (UIViewController *)topMostController { 14 | UIViewController *topController = [self rootViewController]; 15 | 16 | // Getting topMost ViewController 17 | while ([topController presentedViewController]) topController = [topController presentedViewController]; 18 | 19 | // Returning topMost ViewController 20 | return topController; 21 | } 22 | 23 | - (UIViewController *)currentViewController { 24 | UIViewController *currentViewController = [self topMostController]; 25 | 26 | while ([currentViewController isKindOfClass:[UINavigationController class]] && [(UINavigationController*)currentViewController topViewController]) 27 | currentViewController = [(UINavigationController*)currentViewController topViewController]; 28 | 29 | return currentViewController; 30 | } 31 | 32 | @end 33 | -------------------------------------------------------------------------------- /Pods/Masonry/LICENSE: -------------------------------------------------------------------------------- 1 | Copyright (c) 2011-2012 Masonry Team - https://github.com/Masonry 2 | 3 | Permission is hereby granted, free of charge, to any person obtaining a copy 4 | of this software and associated documentation files (the "Software"), to deal 5 | in the Software without restriction, including without limitation the rights 6 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | copies of the Software, and to permit persons to whom the Software is 8 | furnished to do so, subject to the following conditions: 9 | 10 | The above copyright notice and this permission notice shall be included in 11 | all copies or substantial portions of the Software. 12 | 13 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19 | THE SOFTWARE. -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/Foundation/NSURL/NSURL+Param.m: -------------------------------------------------------------------------------- 1 | // 2 | // NSURL+Param.m 3 | // MYKitDemo 4 | // 5 | // Created by sunjinshuai on 2017/9/8. 6 | // Copyright © 2017年 com.51fanxing. All rights reserved. 7 | // 8 | 9 | #import "NSURL+Param.h" 10 | 11 | @implementation NSURL (Param) 12 | 13 | /** 14 | * @brief url参数转字典 15 | * 16 | * @return 参数转字典结果 17 | */ 18 | - (NSDictionary *)parameters { 19 | NSMutableDictionary *parametersDictionary = [NSMutableDictionary dictionary]; 20 | NSArray *queryComponents = [self.query componentsSeparatedByString:@"&"]; 21 | for (NSString *queryComponent in queryComponents) { 22 | NSString *key = [queryComponent componentsSeparatedByString:@"="].firstObject; 23 | NSString *value = [queryComponent substringFromIndex:(key.length + 1)]; 24 | [parametersDictionary setObject:value forKey:key]; 25 | } 26 | return parametersDictionary; 27 | } 28 | 29 | /** 30 | * @brief 根据参数名 取参数值 31 | * 32 | * @param parameterKey 参数名的key 33 | * 34 | * @return 参数值 35 | */ 36 | - (NSString *)valueForParameter:(NSString *)parameterKey { 37 | return [[self parameters] objectForKey:parameterKey]; 38 | } 39 | 40 | @end 41 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/UIKit/UIApplication/UIApplication+Authority.h: -------------------------------------------------------------------------------- 1 | // 2 | // UIApplication+Authority.h 3 | // MYKitDemo 4 | // 5 | // Created by sunjinshuai on 2018/3/14. 6 | // Copyright © 2018年 com.51fanxing. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | typedef void (^CLPermissionBlock)(BOOL granted); 12 | 13 | @interface UIApplication (Authority) 14 | 15 | #pragma mark - 权限查询 16 | /** 17 | 获取UIApplication的定位是否授权 18 | 19 | @return BOOL 20 | */ 21 | + (BOOL)getApplicationLocationPermit; 22 | 23 | /** 24 | 获取UIApplication的通信录是否授权 25 | 26 | @return BOOL 27 | */ 28 | + (BOOL)getApplicationAddressBookPermit; 29 | 30 | /** 31 | 获取UIApplication的相机是否授权 32 | 33 | @return BOOL 34 | */ 35 | + (BOOL)getApplicationCameraPermit; 36 | 37 | /** 38 | 获取UIApplication的推送功能是否授权 39 | 40 | @return BOOL 41 | */ 42 | + (BOOL)getApplicationRemindersPermit; 43 | 44 | /** 45 | 获取UIApplication的相册是否授权 46 | 47 | @return BOOL 48 | */ 49 | + (BOOL)getApplicationPhotosLibraryPermit; 50 | 51 | /** 52 | 获取UIApplication的麦克风是否开启 53 | 54 | @param block CLPermissionBlock 55 | */ 56 | + (void)getApplicationMicrophonePermitWithBlock:(CLPermissionBlock)block; 57 | 58 | 59 | @end 60 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/Foundation/NSMutableArray/NSMutableArray+Queue.m: -------------------------------------------------------------------------------- 1 | // 2 | // NSMutableArray+Queue.m 3 | // MYKitDemo 4 | // 5 | // Created by sunjinshuai on 2017/12/29. 6 | // Copyright © 2017年 com.51fanxing. All rights reserved. 7 | // 8 | 9 | #import "NSMutableArray+Queue.h" 10 | #import "NSObject+AssociatedObject.h" 11 | 12 | @implementation NSMutableArray (Queue) 13 | 14 | BOOL queueSizeFlag = NO; 15 | 16 | - (void)enqueueObject:(id)anObject { 17 | [self addObject:anObject]; 18 | if (queueSizeFlag && self.count > self.queueSize) { 19 | [self removeObjectAtIndex:0]; 20 | } 21 | } 22 | 23 | - (id)dequeueObject { 24 | id anObject = [self firstObject]; 25 | if (self.count > 0) { 26 | [self removeObjectAtIndex:0]; 27 | } 28 | return anObject; 29 | } 30 | 31 | #pragma mark - propertes 32 | 33 | - (NSInteger)queueSize { 34 | return [[self object:@selector(setQueueSize:)] integerValue]; 35 | } 36 | 37 | - (void)setQueueSize:(NSInteger)queueSize { 38 | [self setRetainNonatomicObject:@(queueSize) withKey:@selector(setQueueSize:)]; 39 | if (queueSize > 0) { 40 | queueSizeFlag = YES; 41 | } else { 42 | queueSizeFlag = NO; 43 | } 44 | } 45 | 46 | @end 47 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/UIKit/UIScrollView/UIScrollView+Addition.h: -------------------------------------------------------------------------------- 1 | // 2 | // UIScrollView+Addition.h 3 | // MYKitDemo 4 | // 5 | // Created by sunjinshuai on 2017/12/29. 6 | // Copyright © 2017年 com.51fanxing. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface UIScrollView (Addition) 12 | 13 | /** 14 | * @brief get contentOffset.x 15 | */ 16 | @property (nonatomic) CGFloat contentOffsetX; 17 | 18 | /** 19 | * @brief get contentOffset.y 20 | */ 21 | @property (nonatomic) CGFloat contentOffsetY; 22 | 23 | /** 24 | * @brief get contentSize.width 25 | */ 26 | @property (nonatomic) CGFloat contentSizeWidth; 27 | 28 | /** 29 | * @brief get contentSize.height 30 | */ 31 | @property (nonatomic) CGFloat contentSizeHeight; 32 | 33 | /** 34 | * @brief get contentInset.top 35 | */ 36 | @property (nonatomic) CGFloat contentInsetTop; 37 | 38 | /** 39 | * @brief get contentInset.left 40 | */ 41 | @property (nonatomic) CGFloat contentInsetLeft; 42 | 43 | /** 44 | * @brief get contentInset.bottom 45 | */ 46 | @property (nonatomic) CGFloat contentInsetBottom; 47 | 48 | /** 49 | * @brief get contentInset.right 50 | */ 51 | @property (nonatomic) CGFloat contentInsetRight; 52 | 53 | @end 54 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/UIKit/UIView/UIView+Line.h: -------------------------------------------------------------------------------- 1 | // 2 | // UIView+Line.h 3 | // MYKitDemo 4 | // 5 | // Created by sunjinshuai on 2017/11/18. 6 | // Copyright © 2017年 com.51fanxing. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface UIView (Line) 12 | 13 | /** 14 | * 划各种线 和分割线 15 | */ 16 | - (CAShapeLayer *)addBezierLine:(UIBezierPath *)bezierLine color:(UIColor *)lineColor; 17 | 18 | - (CAShapeLayer *)addDottedLine:(CGPoint)startLine endPoint:(CGPoint)endPoint color:(UIColor *)lineColor; 19 | 20 | - (CAShapeLayer *)addLine:(CGPoint)startLine endPoint:(CGPoint)endPoint color:(UIColor *)lineColor; 21 | 22 | - (CAShapeLayer *)addLine:(CGPoint)startLine endPoint:(CGPoint)endPoint lineWidth:(CGFloat)lineWidth color:(UIColor *)lineColor; 23 | 24 | - (CAShapeLayer *)addCornerRadius:(CGFloat)cornerRadius; 25 | 26 | - (CAShapeLayer *)addCornerRadius:(CGFloat)cornerRadius color:(UIColor *)borderColor; 27 | 28 | - (CAShapeLayer *)addCornerRadius:(CGFloat)cornerRadius lineWidth:(CGFloat)lineWidth color:(UIColor *)borderColor; 29 | 30 | - (CAShapeLayer *)addCornerRadius:(CGFloat)cornerRadius lineWidth:(CGFloat)lineWidth color:(UIColor *)borderColor backgroundColor:(UIColor *)backgroundColor; 31 | 32 | @end 33 | -------------------------------------------------------------------------------- /Pods/Masonry/Masonry/NSArray+MASShorthandAdditions.h: -------------------------------------------------------------------------------- 1 | // 2 | // NSArray+MASShorthandAdditions.h 3 | // Masonry 4 | // 5 | // Created by Jonas Budelmann on 22/07/13. 6 | // Copyright (c) 2013 Jonas Budelmann. All rights reserved. 7 | // 8 | 9 | #import "NSArray+MASAdditions.h" 10 | 11 | #ifdef MAS_SHORTHAND 12 | 13 | /** 14 | * Shorthand array additions without the 'mas_' prefixes, 15 | * only enabled if MAS_SHORTHAND is defined 16 | */ 17 | @interface NSArray (MASShorthandAdditions) 18 | 19 | - (NSArray *)makeConstraints:(void(^)(MASConstraintMaker *make))block; 20 | - (NSArray *)updateConstraints:(void(^)(MASConstraintMaker *make))block; 21 | - (NSArray *)remakeConstraints:(void(^)(MASConstraintMaker *make))block; 22 | 23 | @end 24 | 25 | @implementation NSArray (MASShorthandAdditions) 26 | 27 | - (NSArray *)makeConstraints:(void(^)(MASConstraintMaker *))block { 28 | return [self mas_makeConstraints:block]; 29 | } 30 | 31 | - (NSArray *)updateConstraints:(void(^)(MASConstraintMaker *))block { 32 | return [self mas_updateConstraints:block]; 33 | } 34 | 35 | - (NSArray *)remakeConstraints:(void(^)(MASConstraintMaker *))block { 36 | return [self mas_remakeConstraints:block]; 37 | } 38 | 39 | @end 40 | 41 | #endif 42 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/Foundation/MYFoundationKit.h: -------------------------------------------------------------------------------- 1 | // 2 | // MYFoundationKit.h 3 | // MYKitDemo 4 | // 5 | // Created by QMMac on 2018/4/26. 6 | // Copyright © 2018年 com.51fanxing. All rights reserved. 7 | // 8 | 9 | #ifndef MYFoundationKit_h 10 | #define MYFoundationKit_h 11 | 12 | #import "NSData+YYAdd.h" 13 | #import "NSArray+Collection.h" 14 | #import "NSArray+SafeAccess.h" 15 | #import "NSArray+Addition.h" 16 | #import "NSMutableArray+Sort.h" 17 | #import "NSMutableArray+Stack.h" 18 | #import "NSMutableArray+Queue.h" 19 | #import "NSMutableArray+SafeAccess.h" 20 | #import "NSDictionary+Addition.h" 21 | #import "NSDictionary+SafeAccess.h" 22 | #import "NSDictionary+Collection.h" 23 | #import "NSBundle+AppIcon.h" 24 | #import "NSDate+NSDateRFC1123.h" 25 | #import "NSDate+Addition.h" 26 | #import "NSUserDefaults+SafeAccess.h" 27 | #import "NSURL+Param.h" 28 | #import "NSObject+Addition.h" 29 | #import "NSObject+Swizzle.h" 30 | #import "NSObject+AssociatedObject.h" 31 | #import "NSNumber+Round.h" 32 | #import "NSNumber+Addition.h" 33 | #import "NSString+Addition.h" 34 | #import "NSString+Regular.h" 35 | #import "NSString+Trims.h" 36 | #import "NSString+Size.h" 37 | #import "NSString+Collection.h" 38 | 39 | #endif /* MYFoundationKit_h */ 40 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/SafeKit/FoundationContainer/MYSafeFoundationContainer.m: -------------------------------------------------------------------------------- 1 | // 2 | // MYSafeFoundationContainer.m 3 | // MYKitDemo 4 | // 5 | // Created by QMMac on 2018/6/26. 6 | // Copyright © 2018 com.51fanxing. All rights reserved. 7 | // 8 | 9 | #import "MYSafeFoundationContainer.h" 10 | #import "NSArray+Safe.h" 11 | #import "NSMutableArray+Safe.h" 12 | #import "NSDictionary+Safe.h" 13 | #import "NSMutableDictionary+Safe.h" 14 | #import "NSObject+Safe.h" 15 | #import "NSMutableString+Safe.h" 16 | #import "NSString+Safe.h" 17 | 18 | @interface MYSafeFoundationContainer () 19 | 20 | @property (nonatomic, strong) NSArray *tempArray; 21 | 22 | @end 23 | 24 | @implementation MYSafeFoundationContainer 25 | 26 | + (void)safeGuardContainersSelector { 27 | 28 | [NSArray registerClassPairMethodsInArray]; 29 | [NSMutableArray registerClassPairMethodsInMutableArray]; 30 | 31 | [NSDictionary registerClassPairMethodsInDictionary]; 32 | [NSMutableDictionary registerClassPairMethodsInMutableDictionary]; 33 | 34 | [NSObject registerClassPairMethodsInObject]; 35 | 36 | [NSString registerClassPairMethodsInString]; 37 | [NSMutableString registerClassPairMethodsInMutableString]; 38 | } 39 | 40 | @end 41 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/UIKit/UIButton/UIButton+Badge.h: -------------------------------------------------------------------------------- 1 | // 2 | // UIButton+Badge.h 3 | // MYUtils 4 | // 5 | // Created by sunjinshuai on 2017/8/28. 6 | // Copyright © 2017年 com.51fanxing. All rights reserved. 7 | // https://github.com/mikeMTOL/UIBarButtonItem-Badge 8 | 9 | #import 10 | 11 | @interface UIButton (Badge) 12 | 13 | @property (strong, nonatomic) UILabel *badge; 14 | 15 | // Badge value to be display 16 | @property (nonatomic) NSString *badgeValue; 17 | // Badge background color 18 | @property (nonatomic) UIColor *badgeBGColor; 19 | // Badge text color 20 | @property (nonatomic) UIColor *badgeTextColor; 21 | // Badge font 22 | @property (nonatomic) UIFont *badgeFont; 23 | // Padding value for the badge 24 | @property (nonatomic) CGFloat badgePadding; 25 | // Minimum size badge to small 26 | @property (nonatomic) CGFloat badgeMinSize; 27 | // Values for offseting the badge over the BarButtonItem you picked 28 | @property (nonatomic) CGFloat badgeOriginX; 29 | @property (nonatomic) CGFloat badgeOriginY; 30 | // In case of numbers, remove the badge when reaching zero 31 | @property BOOL shouldHideBadgeAtZero; 32 | // Badge has a bounce animation when value changes 33 | @property BOOL shouldAnimateBadge; 34 | 35 | @end 36 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/UIKit/UIView/UIView+Badge.h: -------------------------------------------------------------------------------- 1 | // 2 | // UIView+Badge.h 3 | // MYKitDemo 4 | // 5 | // Created by sunjinshuai on 2017/12/29. 6 | // Copyright © 2017年 com.51fanxing. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | NS_ASSUME_NONNULL_BEGIN 12 | 13 | @interface UIView (Badge) 14 | 15 | /** 16 | 添加一个红点 17 | 18 | @param radius 圆角半径 19 | @param offsetX x 20 | @param offsetY y 21 | */ 22 | - (void)addBadgeWithRadius:(CGFloat)radius 23 | offsetX:(CGFloat)offsetX 24 | offsetY:(CGFloat)offsetY; 25 | 26 | /** 27 | 显示一个红点 28 | 29 | @param radius 圆角半径 30 | @param offsetX x 31 | @param offsetY y 32 | */ 33 | - (void)showBadgeWithRadius:(CGFloat)radius 34 | offsetX:(CGFloat)offsetX 35 | offsetY:(CGFloat)offsetY; 36 | 37 | 38 | /** 39 | 显示带数字的红点 40 | 41 | @param badgeValue 数字 42 | @param offsetX x 43 | @param offsetY y 44 | */ 45 | - (void)showBadgeValue:(NSString *)badgeValue 46 | offsetX:(CGFloat)offsetX 47 | offsetY:(CGFloat)offsetY; 48 | 49 | /** 50 | 显示 51 | */ 52 | - (void)showBadge; 53 | 54 | /** 55 | 隐藏 56 | */ 57 | - (void)hiddenBadge; 58 | 59 | @end 60 | 61 | NS_ASSUME_NONNULL_END 62 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/UIKit/UINavigationItem/UINavigationItem+Loading.h: -------------------------------------------------------------------------------- 1 | // 2 | // UINavigationItem+Loading.h 3 | // MYKitDemo 4 | // 5 | // Created by sunjinshuai on 2017/9/6. 6 | // Copyright © 2017年 com.51fanxing. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | /** 12 | * Position to show UIActivityIndicatorView in a navigation bar 13 | */ 14 | typedef NS_ENUM(NSUInteger, ANNavBarLoaderPosition){ 15 | /** 16 | * Will show UIActivityIndicatorView in place of title view 17 | */ 18 | ANNavBarLoaderPositionCenter = 0, 19 | /** 20 | * Will show UIActivityIndicatorView in place of left item 21 | */ 22 | ANNavBarLoaderPositionLeft, 23 | /** 24 | * Will show UIActivityIndicatorView in place of right item 25 | */ 26 | ANNavBarLoaderPositionRight 27 | }; 28 | 29 | @interface UINavigationItem (Loading) 30 | 31 | /** 32 | * Add UIActivityIndicatorView to view hierarchy and start animating immediately 33 | * 34 | * @param position Left, center or right 35 | */ 36 | - (void)startAnimatingAt:(ANNavBarLoaderPosition)position; 37 | 38 | /** 39 | * Stop animating, remove UIActivityIndicatorView from view hierarchy and restore item 40 | */ 41 | - (void)stopAnimating; 42 | 43 | @end 44 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/UIKit/UIApplication/UIApplication+NetworkActivityIndicator.h: -------------------------------------------------------------------------------- 1 | // 2 | // UIApplication+NetworkActivityIndicator.h 3 | // MYKitDemo 4 | // 5 | // Created by sunjinshuai on 2017/9/7. 6 | // Copyright © 2017年 com.51fanxing. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface UIApplication (NetworkActivityIndicator) 12 | 13 | /* 14 | This category will automatically keep track of concurrent network activity and display the network activity indicator accordingly. 15 | */ 16 | 17 | /// Tell the application that network activity has begun. The network activity indicator will then be shown. 18 | /// Display the network activity indicator to provide feedback when your application accesses the network for more than a couple of seconds. If the operation finishes sooner than that, you don’t have to show the network activity indicator, because the indicator would be likely to disappear before users notice its presence. 19 | - (void)beganNetworkActivity; 20 | 21 | /// Tell the application that a session of network activity has begun. The network activity indicator will remain showing or hide automatically depending the presence of other ongoing network activity in the app. 22 | - (void)endedNetworkActivity; 23 | 24 | @end 25 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/UIKit/UIBarButtonItem/UIBarButtonItem+Badge.h: -------------------------------------------------------------------------------- 1 | // 2 | // UIBarButtonItem+Badge.h 3 | // MYUtils 4 | // 5 | // Created by sunjinshuai on 2017/8/28. 6 | // Copyright © 2017年 com.51fanxing. All rights reserved. 7 | // https://github.com/mikeMTOL/UIBarButtonItem-Badge 8 | 9 | #import 10 | 11 | @interface UIBarButtonItem (Badge) 12 | 13 | @property (strong, atomic) UILabel *badge; 14 | 15 | // Badge value to be display 16 | @property (nonatomic) NSString *badgeValue; 17 | // Badge background color 18 | @property (nonatomic) UIColor *badgeBGColor; 19 | // Badge text color 20 | @property (nonatomic) UIColor *badgeTextColor; 21 | // Badge font 22 | @property (nonatomic) UIFont *badgeFont; 23 | // Padding value for the badge 24 | @property (nonatomic) CGFloat badgePadding; 25 | // Minimum size badge to small 26 | @property (nonatomic) CGFloat badgeMinSize; 27 | // Values for offseting the badge over the BarButtonItem you picked 28 | @property (nonatomic) CGFloat badgeOriginX; 29 | @property (nonatomic) CGFloat badgeOriginY; 30 | // In case of numbers, remove the badge when reaching zero 31 | @property BOOL shouldHideBadgeAtZero; 32 | // Badge has a bounce animation when value changes 33 | @property BOOL shouldAnimateBadge; 34 | 35 | @end 36 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/Foundation/NSObject/NSObject+AssociatedObject.m: -------------------------------------------------------------------------------- 1 | // 2 | // NSObject+AssociatedObject.m 3 | // MYUtils 4 | // 5 | // Created by sunjinshuai on 2017/8/28. 6 | // Copyright © 2017年 com.51fanxing. All rights reserved. 7 | // 8 | 9 | #import "NSObject+AssociatedObject.h" 10 | #import 11 | 12 | @implementation NSObject (AssociatedObject) 13 | 14 | - (id)object:(SEL)key { 15 | return objc_getAssociatedObject(self, key); 16 | } 17 | 18 | - (void)setAssignObject:(id)object withKey:(SEL)key { 19 | objc_setAssociatedObject(self, key, object, OBJC_ASSOCIATION_ASSIGN); 20 | } 21 | 22 | - (void)setRetainNonatomicObject:(id)object withKey:(SEL)key { 23 | objc_setAssociatedObject(self, key, object, 24 | OBJC_ASSOCIATION_RETAIN_NONATOMIC); 25 | } 26 | 27 | - (void)setCopyNonatomicObject:(id)object withKey:(SEL)key { 28 | objc_setAssociatedObject(self, key, object, OBJC_ASSOCIATION_COPY_NONATOMIC); 29 | } 30 | 31 | - (void)setRetainObject:(id)object withKey:(SEL)key { 32 | objc_setAssociatedObject(self, key, object, OBJC_ASSOCIATION_COPY_NONATOMIC); 33 | } 34 | 35 | - (void)setCopyObject:(id)object withKey:(SEL)key { 36 | objc_setAssociatedObject(self, key, object, OBJC_ASSOCIATION_COPY_NONATOMIC); 37 | } 38 | 39 | @end 40 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/UIKit/UIViewController/UIViewController+TopViewController.m: -------------------------------------------------------------------------------- 1 | // 2 | // UIViewController+TopViewController.m 3 | // MYKitDemo 4 | // 5 | // Created by sunjinshuai on 2018/3/14. 6 | // Copyright © 2018年 com.51fanxing. All rights reserved. 7 | // 8 | 9 | #import "UIViewController+TopViewController.h" 10 | 11 | @implementation UIViewController (TopViewController) 12 | 13 | + (UIViewController *)topViewController { 14 | UIViewController *resultVC; 15 | #if TARGET_OS_IOS 16 | resultVC = [self _topViewController:[[UIApplication sharedApplication].keyWindow rootViewController]]; 17 | while (resultVC.presentedViewController) { 18 | resultVC = [self _topViewController:resultVC.presentedViewController]; 19 | } 20 | #else 21 | 22 | #endif 23 | return resultVC; 24 | } 25 | 26 | + (UIViewController *)_topViewController:(UIViewController *)vc { 27 | if ([vc isKindOfClass:[UINavigationController class]]) { 28 | return [self _topViewController:[(UINavigationController *)vc topViewController]]; 29 | } else if ([vc isKindOfClass:[UITabBarController class]]) { 30 | return [self _topViewController:[(UITabBarController *)vc selectedViewController]]; 31 | } else { 32 | return vc; 33 | } 34 | return nil; 35 | } 36 | 37 | @end 38 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/UIKit/UIButton/UIButton+TouchAreaInsets.m: -------------------------------------------------------------------------------- 1 | // 2 | // UIButton+TouchAreaInsets.m 3 | // MYUtils 4 | // 5 | // Created by sunjinshuai on 2017/8/28. 6 | // Copyright © 2017年 com.51fanxing. All rights reserved. 7 | // 8 | 9 | #import "UIButton+TouchAreaInsets.h" 10 | #import 11 | 12 | @implementation UIButton (TouchAreaInsets) 13 | 14 | - (UIEdgeInsets)touchAreaInsets { 15 | return [objc_getAssociatedObject(self, @selector(touchAreaInsets)) UIEdgeInsetsValue]; 16 | } 17 | 18 | - (void)setTouchAreaInsets:(UIEdgeInsets)touchAreaInsets { 19 | NSValue *value = [NSValue valueWithUIEdgeInsets:touchAreaInsets]; 20 | objc_setAssociatedObject(self, @selector(touchAreaInsets), value, OBJC_ASSOCIATION_RETAIN_NONATOMIC); 21 | } 22 | 23 | - (BOOL)pointInside:(CGPoint)point withEvent:(UIEvent *)event { 24 | UIEdgeInsets touchAreaInsets = self.touchAreaInsets; 25 | CGRect bounds = self.bounds; 26 | bounds = CGRectMake(bounds.origin.x - touchAreaInsets.left, 27 | bounds.origin.y - touchAreaInsets.top, 28 | bounds.size.width + touchAreaInsets.left + touchAreaInsets.right, 29 | bounds.size.height + touchAreaInsets.top + touchAreaInsets.bottom); 30 | return CGRectContainsPoint(bounds, point); 31 | } 32 | 33 | @end 34 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/UIKit/UIImage/UIImage+Color.h: -------------------------------------------------------------------------------- 1 | // 2 | // UIImage+Color.h 3 | // MYKitDemo 4 | // 5 | // Created by sunjinshuai on 2017/9/6. 6 | // Copyright © 2017年 com.51fanxing. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface UIImage (Color) 12 | 13 | /** 14 | * @brief 取图片某一点的颜色 15 | * 16 | * @param point 某一点 17 | * 18 | * @return 颜色 19 | */ 20 | - (UIColor *)colorAtPoint:(CGPoint)point; 21 | 22 | /** 23 | * @brief 取某一像素的颜色 24 | * 25 | * @param point 一像素 26 | * 27 | * @return 颜色 28 | */ 29 | - (UIColor *)colorAtPixel:(CGPoint)point; 30 | 31 | /** 32 | * @brief 返回该图片是否有透明度通道 33 | * 34 | * @return 是否有透明度通道 35 | */ 36 | - (BOOL)hasAlphaChannel; 37 | 38 | /** 39 | * @brief 获得灰度图 40 | * 41 | * @param sourceImage 图片 42 | * 43 | * @return 获得灰度图片 44 | */ 45 | + (UIImage *)covertToGrayImageFromImage:(UIImage *)sourceImage; 46 | 47 | /** 48 | * @brief 根据颜色生成图片,默认size为{1.f, 1.f} 49 | * @param color 传入颜色 50 | * @return 返回图片 51 | */ 52 | + (UIImage *)createImageWithColor:(UIColor *)color; 53 | 54 | /** 55 | * @brief 设置图片的透明度 56 | * @param alpha 透明度 57 | * @return 返回处理后的图片 58 | */ 59 | - (UIImage *)imageWithAlpha:(CGFloat)alpha; 60 | 61 | /** 62 | * @brief 设置图片的size 63 | * @return 返回改变size之后的图片 64 | */ 65 | - (UIImage *)resizeTo:(CGSize)size; 66 | 67 | @end 68 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/SafeKit/NSNull/NSNull+Safe.m: -------------------------------------------------------------------------------- 1 | // 2 | // NSNull+Safe.m 3 | // MYKit 4 | // 5 | // Created by sunjinshuai on 2019/4/17. 6 | // 7 | 8 | #import "NSNull+Safe.h" 9 | #import "NSObject+Swizzle.h" 10 | #import "MYSafeKitRecord.h" 11 | #import 12 | 13 | @implementation NSNull (Safe) 14 | 15 | + (void)safeGuardNSNull { 16 | [self instanceSwizzleMethod:@selector(forwardingTargetForSelector:) 17 | replaceMethod:@selector(safe_instanceMethod_forwardingTargetForSelector:)]; 18 | } 19 | 20 | - (id)safe_instanceMethod_forwardingTargetForSelector:(SEL)aSelector { 21 | static NSArray *sTmpOutput = nil; 22 | if (sTmpOutput == nil) { 23 | sTmpOutput = @[@"", @0, @[], @{}]; 24 | } 25 | 26 | for (id tmpObj in sTmpOutput) { 27 | if ([tmpObj respondsToSelector:aSelector]) { 28 | NSString *reason = [NSString stringWithFormat:@"*****Warning***** logic error.target is %@ method is %@, reason : method forword to Object default implement like send message to nil.",[self class], NSStringFromSelector(aSelector)]; 29 | [MYSafeKitRecord recordFatalWithReason:reason errorType:(MYSafeKitShieldTypeNull)]; 30 | return tmpObj; 31 | } 32 | } 33 | return [self safe_instanceMethod_forwardingTargetForSelector:aSelector]; 34 | } 35 | 36 | @end 37 | -------------------------------------------------------------------------------- /MBSlideMenuUITests/MBSlideMenuUITests.m: -------------------------------------------------------------------------------- 1 | // 2 | // MBSlideMenuUITests.m 3 | // MBSlideMenuUITests 4 | // 5 | // Created by sunjinshuai on 2019/4/21. 6 | // Copyright © 2019 sunjinshuai. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface MBSlideMenuUITests : XCTestCase 12 | 13 | @end 14 | 15 | @implementation MBSlideMenuUITests 16 | 17 | - (void)setUp { 18 | // Put setup code here. This method is called before the invocation of each test method in the class. 19 | 20 | // In UI tests it is usually best to stop immediately when a failure occurs. 21 | self.continueAfterFailure = NO; 22 | 23 | // UI tests must launch the application that they test. Doing this in setup will make sure it happens for each test method. 24 | [[[XCUIApplication alloc] init] launch]; 25 | 26 | // In UI tests it’s important to set the initial state - such as interface orientation - required for your tests before they run. The setUp method is a good place to do this. 27 | } 28 | 29 | - (void)tearDown { 30 | // Put teardown code here. This method is called after the invocation of each test method in the class. 31 | } 32 | 33 | - (void)testExample { 34 | // Use recording to get started writing UI tests. 35 | // Use XCTAssert and related functions to verify your tests produce the correct results. 36 | } 37 | 38 | @end 39 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/Foundation/NSObject/NSObject+Swizzle.h: -------------------------------------------------------------------------------- 1 | // 2 | // NSObject+Swizzle.h 3 | // MYKitDemo 4 | // 5 | // Created by QMMac on 2018/6/13. 6 | // Copyright © 2018 com.51fanxing. All rights reserved. 7 | // 8 | 9 | #import 10 | #import 11 | 12 | @interface NSObject (Swizzle) 13 | 14 | /** 15 | 对类方法进行拦截并替换 16 | 17 | @param originalSelector 类的原类方法 18 | @param replaceSelector 替代方法 19 | */ 20 | + (void)swizzleClassMethod:(SEL)originalSelector replaceMethod:(SEL)replaceSelector; 21 | 22 | /** 23 | 对对象的实例方法进行拦截并替换 24 | 25 | @param originalSelector 对象的原实例方法 26 | @param replaceSelector 替代方法 27 | */ 28 | - (void)instanceSwizzleMethod:(SEL _Nonnull )originalSelector replaceMethod:(SEL _Nonnull )replaceSelector; 29 | 30 | /** 31 | 对类方法进行拦截并替换 32 | 33 | @param klass 被拦截的具体类 34 | @param originalSelector 类的原类方法 35 | @param replaceSelector 替代方法 36 | */ 37 | + (void)classSwizzleMethodWithClass:(Class _Nonnull)klass orginalMethod:(SEL _Nonnull)originalSelector replaceMethod:(SEL _Nonnull)replaceSelector; 38 | 39 | /** 40 | 对对象的实例方法进行拦截并替换 41 | 42 | @param klass 被拦截的具体类 43 | @param originalSelector 对象的原实例方法 44 | @param replaceSelector 替代方法 45 | */ 46 | + (void)instanceSwizzleMethodWithClass:(Class _Nonnull)klass orginalMethod:(SEL _Nonnull)originalSelector replaceMethod:(SEL _Nonnull)replaceSelector; 47 | 48 | @end 49 | -------------------------------------------------------------------------------- /MBSlideMenu/MBNavigationBar.h: -------------------------------------------------------------------------------- 1 | // 2 | // MBNavigationBar.h 3 | // MBSlideMenu 4 | // 5 | // Created by sunjinshuai on 2019/4/21. 6 | // Copyright © 2019 sunjinshuai. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | NS_ASSUME_NONNULL_BEGIN 12 | 13 | @interface MBNavigationBar : UIView 14 | 15 | @property (nonatomic, copy) void(^onClickLeftButton)(void); 16 | @property (nonatomic, copy) void(^onClickRightButton)(void); 17 | 18 | @property (nonatomic, copy) NSString *title; 19 | @property (nonatomic, strong) UIColor *titleLabelColor; 20 | @property (nonatomic, strong) UIFont *titleLabelFont; 21 | @property (nonatomic, strong) UIColor *barBackgroundColor; 22 | @property (nonatomic, strong) UIImage *barBackgroundImage; 23 | 24 | - (void)setBottomLineHidden:(BOOL)hidden; 25 | - (void)setBackgroundAlpha:(CGFloat)alpha; 26 | - (void)setTintColor:(UIColor *)color; 27 | 28 | - (void)setLeftButtonWithNormal:(UIImage *)normal highlighted:(UIImage *)highlighted; 29 | - (void)setLeftButtonWithImage:(UIImage *)image; 30 | - (void)setLeftButtonWithTitle:(NSString *)title titleColor:(UIColor *)titleColor; 31 | 32 | - (void)setRightButtonWithNormal:(UIImage *)normal highlighted:(UIImage *)highlighted; 33 | - (void)setRightButtonWithImage:(UIImage *)image; 34 | - (void)setRightButtonWithTitle:(NSString *)title titleColor:(UIColor *)titleColor; 35 | 36 | @end 37 | 38 | NS_ASSUME_NONNULL_END 39 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/SafeKit/MYSafeKit.h: -------------------------------------------------------------------------------- 1 | // 2 | // MYSafeKit.h 3 | // MYKitDemo 4 | // 5 | // Created by QMMac on 2018/6/26. 6 | // Copyright © 2018 com.51fanxing. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | typedef NS_OPTIONS(NSUInteger, MYSafeKitShieldType) { 12 | MYSafeKitShieldTypeUnrecognizedSelector = 1 << 1, 13 | MYSafeKitShieldTypeContainer = 1 << 2, 14 | MYSafeKitShieldTypeKVO = 1 << 3, 15 | MYSafeKitShieldTypeNotification = 1 << 4, 16 | MYSafeKitShieldTypeTimer = 1 << 5, 17 | MYSafeKitShieldTypeNull = 1 << 6, 18 | MYSafeKitShieldTypeAll = (MYSafeKitShieldTypeUnrecognizedSelector | MYSafeKitShieldTypeContainer | MYSafeKitShieldTypeKVO | MYSafeKitShieldTypeNotification | MYSafeKitShieldTypeTimer | MYSafeKitShieldTypeNull), 19 | }; 20 | 21 | @protocol MYSafeKitRecordProtocol 22 | 23 | - (void)recordWithReason:(NSError *)reason; 24 | 25 | @end 26 | 27 | @interface MYSafeKit : NSObject 28 | 29 | /** 30 | 注册汇报中心 31 | 32 | @param record 汇报中心 33 | */ 34 | + (void)registerRecordHandler:(id)record; 35 | 36 | /** 37 | 注册 SDK,默认只要开启就打开防 Crash 38 | */ 39 | + (void)registerSafeKitShield; 40 | 41 | /** 42 | 注册 SDK,根据不同 ability 开启防 Crash 43 | 本注册方式不包含 MYSafeKitShieldTypeAll 类型 44 | @param ability ability 45 | */ 46 | + (void)registerSafeKitShieldWithAbility:(MYSafeKitShieldType)ability; 47 | 48 | @end 49 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/UIKit/UIButton/UIButton+ImageTitleStyle.h: -------------------------------------------------------------------------------- 1 | // 2 | // UIButton+ImageTitleStyle.h 3 | // MYKitDemo 4 | // 5 | // Created by sunjinshuai on 2018/1/17. 6 | // Copyright © 2018年 com.51fanxing. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | /* 12 | 针对同时设置了Image和Title的场景时UIButton中的图片和文字的关系 13 | */ 14 | typedef NS_ENUM(NSInteger, ButtonImageTitleStyle ) { 15 | ButtonImageTitleStyleDefault = 0, //图片在左,文字在右,整体居中。 16 | ButtonImageTitleStyleLeft = 0, //图片在左,文字在右,整体居中。 17 | ButtonImageTitleStyleRight = 2, //图片在右,文字在左,整体居中。 18 | ButtonImageTitleStyleTop = 3, //图片在上,文字在下,整体居中。 19 | ButtonImageTitleStyleBottom = 4, //图片在下,文字在上,整体居中。 20 | ButtonImageTitleStyleCenterTop = 5, //图片居中,文字在上距离按钮顶部。 21 | ButtonImageTitleStyleCenterBottom = 6, //图片居中,文字在下距离按钮底部。 22 | ButtonImageTitleStyleCenterUp = 7, //图片居中,文字在图片上面。 23 | ButtonImageTitleStyleCenterDown = 8, //图片居中,文字在图片下面。 24 | ButtonImageTitleStyleRightLeft = 9, //图片在右,文字在左,距离按钮两边边距 25 | ButtonImageTitleStyleLeftRight = 10, //图片在左,文字在右,距离按钮两边边距 26 | }; 27 | 28 | @interface UIButton (ImageTitleStyle) 29 | 30 | /* 31 | 调整按钮的文本和image的布局,前提是title和image同时存在才会调整。 32 | padding是调整布局时整个按钮和图文的间隔。 33 | 34 | */ 35 | - (void)setButtonImageTitleStyle:(ButtonImageTitleStyle)style 36 | padding:(CGFloat)padding; 37 | 38 | @end 39 | -------------------------------------------------------------------------------- /Pods/Masonry/Masonry/MASViewAttribute.m: -------------------------------------------------------------------------------- 1 | // 2 | // MASViewAttribute.m 3 | // Masonry 4 | // 5 | // Created by Jonas Budelmann on 21/07/13. 6 | // Copyright (c) 2013 cloudling. All rights reserved. 7 | // 8 | 9 | #import "MASViewAttribute.h" 10 | 11 | @implementation MASViewAttribute 12 | 13 | - (id)initWithView:(MAS_VIEW *)view layoutAttribute:(NSLayoutAttribute)layoutAttribute { 14 | self = [self initWithView:view item:view layoutAttribute:layoutAttribute]; 15 | return self; 16 | } 17 | 18 | - (id)initWithView:(MAS_VIEW *)view item:(id)item layoutAttribute:(NSLayoutAttribute)layoutAttribute { 19 | self = [super init]; 20 | if (!self) return nil; 21 | 22 | _view = view; 23 | _item = item; 24 | _layoutAttribute = layoutAttribute; 25 | 26 | return self; 27 | } 28 | 29 | - (BOOL)isSizeAttribute { 30 | return self.layoutAttribute == NSLayoutAttributeWidth 31 | || self.layoutAttribute == NSLayoutAttributeHeight; 32 | } 33 | 34 | - (BOOL)isEqual:(MASViewAttribute *)viewAttribute { 35 | if ([viewAttribute isKindOfClass:self.class]) { 36 | return self.view == viewAttribute.view 37 | && self.layoutAttribute == viewAttribute.layoutAttribute; 38 | } 39 | return [super isEqual:viewAttribute]; 40 | } 41 | 42 | - (NSUInteger)hash { 43 | return MAS_NSUINTROTATE([self.view hash], MAS_NSUINT_BIT / 2) ^ self.layoutAttribute; 44 | } 45 | 46 | @end 47 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/UIKit/UINavigationController/UINavigationController+Addition.h: -------------------------------------------------------------------------------- 1 | // 2 | // UINavigationController+Addition.h 3 | // MYUtils 4 | // 5 | // Created by sunjinshuai on 2017/8/28. 6 | // Copyright © 2017年 com.51fanxing. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface UINavigationController (Addition) 12 | 13 | /** 14 | * @brief 寻找Navigation中的某个viewcontroler对象 15 | * 16 | * @param className viewcontroler名称 17 | * 18 | * @return viewcontroler对象 19 | */ 20 | - (id)findViewController:(NSString *)className; 21 | 22 | /** 23 | * @brief 判断是否只有一个RootViewController 24 | * 25 | * @return 是否只有一个RootViewController 26 | */ 27 | - (BOOL)isOnlyContainRootViewController; 28 | 29 | /** 30 | * @brief RootViewController 31 | * 32 | * @return RootViewController 33 | */ 34 | - (UIViewController *)rootViewController; 35 | 36 | /** 37 | * @brief 返回指定的viewcontroler 38 | * 39 | * @param className 指定viewcontroler类名 40 | * @param animated 是否动画 41 | * 42 | * @return pop之后的viewcontrolers 43 | */ 44 | - (NSArray *)popToViewControllerWithClassName:(NSString *)className 45 | animated:(BOOL)animated; 46 | 47 | /** 48 | * @brief pop n层 49 | * 50 | * @param level n层 51 | * @param animated 是否动画 52 | * 53 | * @return pop之后的viewcontrolers 54 | */ 55 | - (NSArray *)popToViewControllerWithLevel:(NSInteger)level animated:(BOOL)animated; 56 | 57 | @end 58 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/Foundation/NSString/NSString+Regular.h: -------------------------------------------------------------------------------- 1 | // 2 | // NSString+Regular.h 3 | // FXKitExampleDemo 4 | // 5 | // Created by sunjinshuai on 2017/8/30. 6 | // Copyright © 2017年 com.51fanxing. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface NSString (Regular) 12 | 13 | 14 | /*! 15 | * @method vertifyEmail 16 | * 验证字符串是否邮箱格式 17 | */ 18 | - (BOOL)vertifyEmail; 19 | 20 | /*! 21 | * @method vertifyChinese 22 | * 验证字符串是否中文 23 | */ 24 | - (BOOL)vertifyChinese; 25 | 26 | /*! 27 | * @method vertifyPassword 28 | * 验证字符串是否6-18位大小字母混合数字密码 29 | */ 30 | - (BOOL)vertifyPassword; 31 | 32 | /*! 33 | * @method vertifyHyperLink 34 | * 验证字符串是否超链接 35 | */ 36 | - (BOOL)vertifyHyperLink; 37 | 38 | /*! 39 | * @method vertifyTelephone 40 | * 验证字符串是否固机号码 41 | */ 42 | - (BOOL)vertifyTelephone; 43 | 44 | /*! 45 | * @method vertifyIpAddress 46 | * 验证字符串是否IP地址 47 | */ 48 | - (BOOL)vertifyIpAddress; 49 | 50 | /*! 51 | * @method vertifyMobilePhone 52 | * 验证字符串是否手机号码 53 | */ 54 | - (BOOL)vertifyMobilePhone; 55 | 56 | /*! 57 | * @method vertifyCarNumber 58 | * 验证字符串是否车牌号码 59 | */ 60 | - (BOOL)vertifyCarNumber; 61 | 62 | /*! 63 | * @method vertifyIdentifierNumber 64 | * 验证字符串是否身份证号码 65 | */ 66 | - (BOOL)vertifyIdentifierNumber; 67 | 68 | /*! 69 | * @method vertifyStringWithExp: 70 | * 验证字符串是否符合正则表达式规则 71 | */ 72 | - (BOOL)vertifyStringWithExp:(NSString *)exp; 73 | 74 | @end 75 | -------------------------------------------------------------------------------- /Pods/Masonry/Masonry/MASViewAttribute.h: -------------------------------------------------------------------------------- 1 | // 2 | // MASViewAttribute.h 3 | // Masonry 4 | // 5 | // Created by Jonas Budelmann on 21/07/13. 6 | // Copyright (c) 2013 cloudling. All rights reserved. 7 | // 8 | 9 | #import "MASUtilities.h" 10 | 11 | /** 12 | * An immutable tuple which stores the view and the related NSLayoutAttribute. 13 | * Describes part of either the left or right hand side of a constraint equation 14 | */ 15 | @interface MASViewAttribute : NSObject 16 | 17 | /** 18 | * The view which the reciever relates to. Can be nil if item is not a view. 19 | */ 20 | @property (nonatomic, weak, readonly) MAS_VIEW *view; 21 | 22 | /** 23 | * The item which the reciever relates to. 24 | */ 25 | @property (nonatomic, weak, readonly) id item; 26 | 27 | /** 28 | * The attribute which the reciever relates to 29 | */ 30 | @property (nonatomic, assign, readonly) NSLayoutAttribute layoutAttribute; 31 | 32 | /** 33 | * Convenience initializer. 34 | */ 35 | - (id)initWithView:(MAS_VIEW *)view layoutAttribute:(NSLayoutAttribute)layoutAttribute; 36 | 37 | /** 38 | * The designated initializer. 39 | */ 40 | - (id)initWithView:(MAS_VIEW *)view item:(id)item layoutAttribute:(NSLayoutAttribute)layoutAttribute; 41 | 42 | /** 43 | * Determine whether the layoutAttribute is a size attribute 44 | * 45 | * @return YES if layoutAttribute is equal to NSLayoutAttributeWidth or NSLayoutAttributeHeight 46 | */ 47 | - (BOOL)isSizeAttribute; 48 | 49 | @end 50 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/Foundation/NSDictionary/NSDictionary+SafeAccess.h: -------------------------------------------------------------------------------- 1 | // 2 | // NSDictionary+SafeAccess.h 3 | // MYUtils 4 | // 5 | // Created by sunjinshuai on 2017/8/27. 6 | // Copyright © 2017年 com.51fanxing. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface NSDictionary (SafeAccess) 12 | 13 | - (BOOL)hasKey:(NSString *)key; 14 | 15 | - (NSString *)stringForKey:(id)key; 16 | 17 | - (NSNumber *)numberForKey:(id)key; 18 | 19 | - (NSDecimalNumber *)decimalNumberForKey:(id)key; 20 | 21 | - (NSArray *)arrayForKey:(id)key; 22 | 23 | - (NSDictionary*)dictionaryForKey:(id)key; 24 | 25 | - (NSInteger)integerForKey:(id)key; 26 | 27 | - (NSUInteger)unsignedIntegerForKey:(id)key; 28 | 29 | - (BOOL)boolForKey:(id)key; 30 | 31 | - (int16_t)int16ForKey:(id)key; 32 | 33 | - (int32_t)int32ForKey:(id)key; 34 | 35 | - (int64_t)int64ForKey:(id)key; 36 | 37 | - (char)charForKey:(id)key; 38 | 39 | - (short)shortForKey:(id)key; 40 | 41 | - (float)floatForKey:(id)key; 42 | 43 | - (double)doubleForKey:(id)key; 44 | 45 | - (long)longForKey:(id)key; 46 | 47 | - (long long)longLongForKey:(id)key; 48 | 49 | - (unsigned long long)unsignedLongLongForKey:(id)key; 50 | 51 | - (id)getValueForKey:(NSString *)key; 52 | 53 | - (NSDate *)dateForKey:(id)key dateFormat:(NSString *)dateFormat; 54 | 55 | - (CGFloat)CGFloatForKey:(id)key; 56 | 57 | - (CGPoint)pointForKey:(id)key; 58 | 59 | - (CGSize)sizeForKey:(id)key; 60 | 61 | - (CGRect)rectForKey:(id)key; 62 | 63 | @end 64 | -------------------------------------------------------------------------------- /Pods/Masonry/Masonry/ViewController+MASAdditions.m: -------------------------------------------------------------------------------- 1 | // 2 | // UIViewController+MASAdditions.m 3 | // Masonry 4 | // 5 | // Created by Craig Siemens on 2015-06-23. 6 | // 7 | // 8 | 9 | #import "ViewController+MASAdditions.h" 10 | 11 | #ifdef MAS_VIEW_CONTROLLER 12 | 13 | @implementation MAS_VIEW_CONTROLLER (MASAdditions) 14 | 15 | - (MASViewAttribute *)mas_topLayoutGuide { 16 | return [[MASViewAttribute alloc] initWithView:self.view item:self.topLayoutGuide layoutAttribute:NSLayoutAttributeBottom]; 17 | } 18 | - (MASViewAttribute *)mas_topLayoutGuideTop { 19 | return [[MASViewAttribute alloc] initWithView:self.view item:self.topLayoutGuide layoutAttribute:NSLayoutAttributeTop]; 20 | } 21 | - (MASViewAttribute *)mas_topLayoutGuideBottom { 22 | return [[MASViewAttribute alloc] initWithView:self.view item:self.topLayoutGuide layoutAttribute:NSLayoutAttributeBottom]; 23 | } 24 | 25 | - (MASViewAttribute *)mas_bottomLayoutGuide { 26 | return [[MASViewAttribute alloc] initWithView:self.view item:self.bottomLayoutGuide layoutAttribute:NSLayoutAttributeTop]; 27 | } 28 | - (MASViewAttribute *)mas_bottomLayoutGuideTop { 29 | return [[MASViewAttribute alloc] initWithView:self.view item:self.bottomLayoutGuide layoutAttribute:NSLayoutAttributeTop]; 30 | } 31 | - (MASViewAttribute *)mas_bottomLayoutGuideBottom { 32 | return [[MASViewAttribute alloc] initWithView:self.view item:self.bottomLayoutGuide layoutAttribute:NSLayoutAttributeBottom]; 33 | } 34 | 35 | 36 | 37 | @end 38 | 39 | #endif 40 | -------------------------------------------------------------------------------- /Pods/Masonry/Masonry/MASViewConstraint.h: -------------------------------------------------------------------------------- 1 | // 2 | // MASViewConstraint.h 3 | // Masonry 4 | // 5 | // Created by Jonas Budelmann on 20/07/13. 6 | // Copyright (c) 2013 cloudling. All rights reserved. 7 | // 8 | 9 | #import "MASViewAttribute.h" 10 | #import "MASConstraint.h" 11 | #import "MASLayoutConstraint.h" 12 | #import "MASUtilities.h" 13 | 14 | /** 15 | * A single constraint. 16 | * Contains the attributes neccessary for creating a NSLayoutConstraint and adding it to the appropriate view 17 | */ 18 | @interface MASViewConstraint : MASConstraint 19 | 20 | /** 21 | * First item/view and first attribute of the NSLayoutConstraint 22 | */ 23 | @property (nonatomic, strong, readonly) MASViewAttribute *firstViewAttribute; 24 | 25 | /** 26 | * Second item/view and second attribute of the NSLayoutConstraint 27 | */ 28 | @property (nonatomic, strong, readonly) MASViewAttribute *secondViewAttribute; 29 | 30 | /** 31 | * initialises the MASViewConstraint with the first part of the equation 32 | * 33 | * @param firstViewAttribute view.mas_left, view.mas_width etc. 34 | * 35 | * @return a new view constraint 36 | */ 37 | - (id)initWithFirstViewAttribute:(MASViewAttribute *)firstViewAttribute; 38 | 39 | /** 40 | * Returns all MASViewConstraints installed with this view as a first item. 41 | * 42 | * @param view A view to retrieve constraints for. 43 | * 44 | * @return An array of MASViewConstraints. 45 | */ 46 | + (NSArray *)installedConstraintsForView:(MAS_VIEW *)view; 47 | 48 | @end 49 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/UIKit/UINavigationController/UINavigationController+BackButtonHandler.m: -------------------------------------------------------------------------------- 1 | // 2 | // UINavigationController+BackButtonHandler.m 3 | // MYKitDemo 4 | // 5 | // Created by michael on 2018/12/15. 6 | // Copyright © 2018 com.51fanxing. All rights reserved. 7 | // 8 | 9 | #import "UINavigationController+BackButtonHandler.h" 10 | 11 | @implementation UIViewController (ShouldPopOnBackButton) 12 | 13 | @end 14 | 15 | @implementation UINavigationController (BackButtonHandler) 16 | 17 | - (BOOL)navigationBar:(UINavigationBar *)navigationBar 18 | shouldPopItem:(UINavigationItem *)item { 19 | if ([self.viewControllers count] < [navigationBar.items count]) { 20 | return YES; 21 | } 22 | 23 | BOOL shouldPop = YES; 24 | UIViewController *vc = [self topViewController]; 25 | if ([vc respondsToSelector:@selector(navigationShouldPopOnBackButton)]) { 26 | shouldPop = [vc navigationShouldPopOnBackButton]; 27 | } 28 | 29 | if (shouldPop) { 30 | dispatch_async(dispatch_get_main_queue(), ^{ 31 | [self popViewControllerAnimated:YES]; 32 | }); 33 | } else { 34 | // 取消 pop 后,复原返回按钮的状态 35 | for (UIView *subview in [navigationBar subviews]) { 36 | if(0. < subview.alpha && subview.alpha < 1.) { 37 | [UIView animateWithDuration:.25 animations:^{ 38 | subview.alpha = 1.; 39 | }]; 40 | } 41 | } 42 | } 43 | return NO; 44 | } 45 | 46 | @end 47 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/Foundation/NSDate/NSDate+NSDateRFC1123.h: -------------------------------------------------------------------------------- 1 | // 2 | // NSDate+NSDateRFC1123.h 3 | // MYKitDemo 4 | // 5 | // Created by sunjinshuai on 2017/11/18. 6 | // Copyright © 2017年 com.51fanxing. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | NS_ASSUME_NONNULL_BEGIN 12 | 13 | @interface NSDate (NSDateRFC1123) 14 | 15 | /** 16 | Convert a RFC1123 'Full-Date' string 17 | (http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.3.1) 18 | into NSDate. 19 | */ 20 | + (nullable NSDate *)dateFromRFC1123:(NSString * _Nullable)value_; 21 | 22 | /** 23 | Convert NSDate into a RFC1123 'Full-Date' string 24 | (http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.3.1). 25 | */ 26 | - (nullable NSString *)rfc1123String; 27 | 28 | /** 29 | Convert NSDate into a 'yyyyMMdd' string 30 | */ 31 | - (nullable NSString *)yyyyMMddString; 32 | 33 | /** 34 | Convert NSDate into a string with FormatString 35 | */ 36 | - (nullable NSString *)stringWithFormatString:(nonnull NSString *)formatString; 37 | 38 | /** 39 | * @brief Convert to local time zone. 40 | */ 41 | - (nullable NSDate *)toLocalDate; 42 | 43 | - (nullable NSDate *)toBeijingDate; 44 | 45 | /** 46 | * @brief Convert to gmt time zone. 47 | */ 48 | - (nullable NSDate *)toGlobalDate; 49 | 50 | /** 51 | * @brief 00:00:00 52 | */ 53 | - (nullable NSDate *)beginningOfDay; 54 | 55 | /** 56 | * @brief 23:59:59 57 | */ 58 | - (nullable NSDate *)endingOfDay; 59 | 60 | /** 61 | * @brief MM月01日 62 | */ 63 | - (nonnull NSString *)beginningOfMonth; 64 | 65 | @end 66 | 67 | NS_ASSUME_NONNULL_END 68 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/UIKit/UITextView/UITextView+InputLengthCalculate.h: -------------------------------------------------------------------------------- 1 | // 2 | // UITextView+InputLengthCalculate.h 3 | // MYKitDemo 4 | // 5 | // Created by sunjinshuai on 2017/9/7. 6 | // Copyright © 2017年 com.51fanxing. All rights reserved. 7 | // 用于计算textview输入情况下的字符数,解决实现限制字符数时,计算不准的问题 8 | 9 | #import 10 | 11 | @interface UITextView (InputLengthCalculate) 12 | 13 | /* 14 | - (BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text 15 | { 16 | NSInteger textLength = [textView getInputLengthWithText:text]; 17 | if (textLength > 20) { 18 | //超过20个字可以删除 19 | if ([text isEqualToString:@""]) { 20 | return YES; 21 | } 22 | return NO; 23 | } 24 | return YES; 25 | } 26 | 27 | - (void)textViewDidChange:(UITextView *)textView 28 | { 29 | if ([textView getInputLengthWithText:nil] > 20) { 30 | textView.text = [textView.text substringToIndex:20]; 31 | } 32 | } 33 | 34 | */ 35 | 36 | /** 37 | * 用来捕获输入时的字符数的 38 | * 39 | * @param text 40 | 在-(BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text使用时需要传入replacementText用于计算长度,- (void)textViewDidChange:(UITextView *)textView中使用不需要传入 41 | * 42 | * @return 字符长度 43 | */ 44 | - (NSInteger)getInputLengthWithText:(NSString *)text; 45 | 46 | - (void)insertAttributedText:(NSAttributedString *)text; 47 | - (void)insertAttributedText:(NSAttributedString *)text 48 | settingBlock:(void (^)(NSMutableAttributedString *attributedText))settingBlock; 49 | 50 | @end 51 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/UIKit/UIImage/UIImage+CornerRadius.h: -------------------------------------------------------------------------------- 1 | // 2 | // UIImage+CornerRadius.h 3 | // MYKitDemo 4 | // 5 | // Created by sunjinshuai on 2018/3/14. 6 | // Copyright © 2018年 com.51fanxing. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface UIImage (CornerRadius) 12 | 13 | /** 14 | 将图片进行圆角处理,默认无边框(此操作是线程安全的)。 15 | @param radius 圆角大小 16 | @param newSize 图片将会缩放成的目标大小 17 | @return 返回处理之后的图片 18 | */ 19 | - (nullable UIImage *)imageByRoundCornerRadius:(CGFloat)radius 20 | scaleSize:(CGSize)newSize; 21 | 22 | /** 23 | 将图片进行圆角处理,并加上边框(此操作是线程安全的)。 24 | @param radius 圆角大小 25 | @param newSize 图片将会缩放成的目标大小 26 | @param borderWidth 边框宽度 27 | @param borderColor 边框颜色 28 | @return 返回处理之后的图片 29 | */ 30 | - (nullable UIImage *)imageByRoundCornerRadius:(CGFloat)radius 31 | scaleSize:(CGSize)newSize 32 | borderWidth:(CGFloat)borderWidth 33 | borderColor:(nullable UIColor *)borderColor; 34 | 35 | /** 36 | 图片加上圆形边框,图片必须得是正方形的,否则直接返回未加边框的原图片(此操作是线程安全的) 37 | @param color 边框颜色 38 | @param width 边框宽度 39 | @return 返回处理之后的图片 40 | */ 41 | - (nullable UIImage *)imageByRoundBorderedColor:(nullable UIColor *)color 42 | borderWidth:(CGFloat)width; 43 | 44 | /** 45 | 创建一张纯色的圆形图片 46 | @param color 图片填充的颜色 47 | @param radius 圆形图片的半径 48 | @return 返回纯色的圆形图片 49 | */ 50 | + (nullable UIImage *)roundImageWithColor:(nullable UIColor *)color 51 | radius:(CGFloat)radius; 52 | 53 | @end 54 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/UIKit/UILabel/UILabel+LineSpacing.m: -------------------------------------------------------------------------------- 1 | // 2 | // UILabel+LineSpacing.m 3 | // MYKitDemo 4 | // 5 | // Created by QMMac on 2018/7/20. 6 | // Copyright © 2018 com.51fanxing. All rights reserved. 7 | // 8 | 9 | #import "UILabel+LineSpacing.h" 10 | #import "NSObject+Swizzle.h" 11 | #import "NSString+Size.h" 12 | 13 | @implementation UILabel (LineSpacing) 14 | 15 | static char *lineSpaceKey; 16 | 17 | + (void)registerLineSpacingSelector { 18 | 19 | // 防御对象实例方法 20 | [self instanceSwizzleMethod:@selector(setText:) replaceMethod:@selector(setHasLineSpaceText:)]; 21 | } 22 | 23 | // 设置带有行间距的文本。 24 | - (void)setHasLineSpaceText:(NSString *)text { 25 | 26 | if (!text.length || self.lineSpace == 0) { 27 | [self setHasLineSpaceText:text]; 28 | return; 29 | } 30 | 31 | NSMutableParagraphStyle *paragraphStyle = [NSMutableParagraphStyle new]; 32 | paragraphStyle.lineSpacing = self.lineSpace - (self.font.lineHeight - self.font.pointSize); 33 | paragraphStyle.lineBreakMode = self.lineBreakMode; 34 | NSMutableDictionary *attributes = [NSMutableDictionary dictionary]; 35 | [attributes setObject:paragraphStyle forKey:NSParagraphStyleAttributeName]; 36 | self.attributedText = [[NSAttributedString alloc] initWithString:text attributes:attributes]; 37 | } 38 | 39 | - (void)setLineSpace:(CGFloat)lineSpace { 40 | 41 | objc_setAssociatedObject(self, &lineSpaceKey, @(lineSpace), OBJC_ASSOCIATION_ASSIGN); 42 | self.text = self.text; 43 | } 44 | 45 | - (CGFloat)lineSpace { 46 | return [objc_getAssociatedObject(self, &lineSpaceKey) floatValue]; 47 | } 48 | 49 | @end 50 | 51 | -------------------------------------------------------------------------------- /MBSlideMenu/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | $(DEVELOPMENT_LANGUAGE) 7 | CFBundleExecutable 8 | $(EXECUTABLE_NAME) 9 | CFBundleIdentifier 10 | $(PRODUCT_BUNDLE_IDENTIFIER) 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundleName 14 | $(PRODUCT_NAME) 15 | CFBundlePackageType 16 | APPL 17 | CFBundleShortVersionString 18 | 1.0 19 | CFBundleVersion 20 | 1 21 | LSRequiresIPhoneOS 22 | 23 | UILaunchStoryboardName 24 | LaunchScreen 25 | UIMainStoryboardFile 26 | Main 27 | UIRequiredDeviceCapabilities 28 | 29 | armv7 30 | 31 | UISupportedInterfaceOrientations 32 | 33 | UIInterfaceOrientationPortrait 34 | UIInterfaceOrientationLandscapeLeft 35 | UIInterfaceOrientationLandscapeRight 36 | 37 | UISupportedInterfaceOrientations~ipad 38 | 39 | UIInterfaceOrientationPortrait 40 | UIInterfaceOrientationPortraitUpsideDown 41 | UIInterfaceOrientationLandscapeLeft 42 | UIInterfaceOrientationLandscapeRight 43 | 44 | 45 | 46 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/Foundation/NSArray/NSArray+SafeAccess.h: -------------------------------------------------------------------------------- 1 | // 2 | // NSArray+SafeAccess.h 3 | // MYKitDemo 4 | // 5 | // Created by sunjinshuai on 2017/9/8. 6 | // Copyright © 2017年 com.51fanxing. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface NSArray (SafeAccess) 12 | 13 | /*! 14 | @method objectWithIndex: 15 | @abstract 检查是否越界和NSNull如果是返回nil 16 | @result 返回对象 17 | */ 18 | - (id)objectWithIndex:(NSUInteger)index; 19 | 20 | - (NSString *)stringWithIndex:(NSUInteger)index; 21 | 22 | - (NSNumber *)numberWithIndex:(NSUInteger)index; 23 | 24 | - (NSDecimalNumber *)decimalNumberWithIndex:(NSUInteger)index; 25 | 26 | - (NSArray *)arrayWithIndex:(NSUInteger)index; 27 | 28 | - (NSDictionary *)dictionaryWithIndex:(NSUInteger)index; 29 | 30 | - (NSInteger)integerWithIndex:(NSUInteger)index; 31 | 32 | - (NSUInteger)unsignedIntegerWithIndex:(NSUInteger)index; 33 | 34 | - (BOOL)boolWithIndex:(NSUInteger)index; 35 | 36 | - (int16_t)int16WithIndex:(NSUInteger)index; 37 | 38 | - (int32_t)int32WithIndex:(NSUInteger)index; 39 | 40 | - (int64_t)int64WithIndex:(NSUInteger)index; 41 | 42 | - (char)charWithIndex:(NSUInteger)index; 43 | 44 | - (short)shortWithIndex:(NSUInteger)index; 45 | 46 | - (float)floatWithIndex:(NSUInteger)index; 47 | 48 | - (double)doubleWithIndex:(NSUInteger)index; 49 | 50 | - (NSDate *)dateWithIndex:(NSUInteger)index dateFormat:(NSString *)dateFormat; 51 | 52 | - (CGFloat)my_floatWithIndex:(NSUInteger)index; 53 | 54 | - (CGPoint)my_pointWithIndex:(NSUInteger)index; 55 | 56 | - (CGSize)my_sizeWithIndex:(NSUInteger)index; 57 | 58 | - (CGRect)my_rectWithIndex:(NSUInteger)index; 59 | 60 | @end 61 | 62 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/UIKit/UIView/UIView+CornerRadii.m: -------------------------------------------------------------------------------- 1 | // 2 | // UIView+CornerRadii.m 3 | // LPDCrowdsource 4 | // 5 | // Created by eMr.Wang on 16/1/29. 6 | // Copyright © 2016年 elm. All rights reserved. 7 | // 8 | 9 | #import "UIView+CornerRadii.h" 10 | 11 | @implementation UIView (CornerRadii) 12 | 13 | - (void)setCornerRadii:(CGFloat)cornerRadii roundingCorners:(UIRectCorner)roundingCorners { 14 | return [self setCornerRadii:cornerRadii roundingCorners:roundingCorners borderWidth:0 borderColor:[UIColor whiteColor]]; 15 | } 16 | 17 | - (void)setCornerRadii:(CGFloat)cornerRadii roundingCorners:(UIRectCorner)roundingCorners borderWidth:(CGFloat)borderWidth 18 | borderColor:(UIColor *)borderColor { 19 | if (self.layer.mask) { 20 | self.layer.mask = nil; 21 | } 22 | self.layer.masksToBounds = YES; 23 | UIBezierPath *maskPath = [UIBezierPath bezierPathWithRoundedRect:self.bounds 24 | byRoundingCorners:roundingCorners 25 | cornerRadii:CGSizeMake(cornerRadii, cornerRadii)]; 26 | CAShapeLayer *maskLayer = [CAShapeLayer layer]; 27 | maskLayer.frame = self.bounds; 28 | maskLayer.path = maskPath.CGPath; 29 | self.layer.mask = maskLayer; 30 | 31 | CAShapeLayer *borderLayer = [CAShapeLayer layer]; 32 | borderLayer.path = maskPath.CGPath; 33 | borderLayer.fillColor = [UIColor clearColor].CGColor; 34 | borderLayer.strokeColor = borderColor.CGColor; 35 | borderLayer.lineWidth = borderWidth; 36 | borderLayer.frame = self.bounds; 37 | 38 | [self.layer addSublayer:borderLayer]; 39 | } 40 | 41 | @end 42 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/UIKit/UITextView/UITextView+Select.m: -------------------------------------------------------------------------------- 1 | // 2 | // UITextView+Select.m 3 | // MYKitDemo 4 | // 5 | // Created by sunjinshuai on 2017/9/7. 6 | // Copyright © 2017年 com.51fanxing. All rights reserved. 7 | // 8 | 9 | #import "UITextView+Select.h" 10 | 11 | @implementation UITextView (Select) 12 | 13 | /** 14 | * @brief 当前选中的字符串范围 15 | * 16 | * @return NSRange 17 | */ 18 | - (NSRange)selectedRange { 19 | UITextPosition* beginning = self.beginningOfDocument; 20 | 21 | UITextRange* selectedRange = self.selectedTextRange; 22 | UITextPosition* selectionStart = selectedRange.start; 23 | UITextPosition* selectionEnd = selectedRange.end; 24 | 25 | NSInteger location = [self offsetFromPosition:beginning toPosition:selectionStart]; 26 | NSInteger length = [self offsetFromPosition:selectionStart toPosition:selectionEnd]; 27 | 28 | return NSMakeRange(location, length); 29 | } 30 | /** 31 | * @brief 选中所有文字 32 | */ 33 | - (void)selectAllText { 34 | UITextRange *range = [self textRangeFromPosition:self.beginningOfDocument toPosition:self.endOfDocument]; 35 | [self setSelectedTextRange:range]; 36 | } 37 | /** 38 | * @brief 选中指定范围的文字 39 | * 40 | * @param range NSRange范围 41 | */ 42 | - (void)setSelectedRange:(NSRange)range { 43 | UITextPosition *beginning = self.beginningOfDocument; 44 | UITextPosition *startPosition = [self positionFromPosition:beginning offset:range.location]; 45 | UITextPosition *endPosition = [self positionFromPosition:beginning offset:NSMaxRange(range)]; 46 | UITextRange *selectionRange = [self textRangeFromPosition:startPosition toPosition:endPosition]; 47 | [self setSelectedTextRange:selectionRange]; 48 | } 49 | 50 | @end 51 | -------------------------------------------------------------------------------- /MBSlideMenu/Base.lproj/LaunchScreen.storyboard: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/UIKit/UIButton/UIButton+Indicator.m: -------------------------------------------------------------------------------- 1 | // 2 | // UIButton+Indicator.m 3 | // MYUtils 4 | // 5 | // Created by sunjinshuai on 2017/8/28. 6 | // Copyright © 2017年 com.51fanxing. All rights reserved. 7 | // 8 | 9 | #import "UIButton+Indicator.h" 10 | #import 11 | 12 | // Associative reference keys. 13 | static NSString *const UIButton_IndicatorViewKey = @"UIButton_IndicatorViewKey"; 14 | static NSString *const UIButton_ButtonTextObjectKey = @"UIButton_ButtonTextObjectKey"; 15 | 16 | @implementation UIButton (Indicator) 17 | 18 | - (void)showIndicator { 19 | 20 | UIActivityIndicatorView *indicator = [[UIActivityIndicatorView alloc] initWithActivityIndicatorStyle:UIActivityIndicatorViewStyleWhite]; 21 | indicator.center = CGPointMake(self.bounds.size.width / 2, self.bounds.size.height / 2); 22 | [indicator startAnimating]; 23 | 24 | NSString *currentButtonText = self.titleLabel.text; 25 | 26 | objc_setAssociatedObject(self, &UIButton_ButtonTextObjectKey, currentButtonText, OBJC_ASSOCIATION_RETAIN_NONATOMIC); 27 | objc_setAssociatedObject(self, &UIButton_IndicatorViewKey, indicator, OBJC_ASSOCIATION_RETAIN_NONATOMIC); 28 | 29 | [self setTitle:@"" forState:UIControlStateNormal]; 30 | self.enabled = NO; 31 | [self addSubview:indicator]; 32 | } 33 | 34 | - (void)hideIndicator { 35 | 36 | NSString *currentButtonText = (NSString *)objc_getAssociatedObject(self, &UIButton_ButtonTextObjectKey); 37 | UIActivityIndicatorView *indicator = (UIActivityIndicatorView *)objc_getAssociatedObject(self, &UIButton_IndicatorViewKey); 38 | 39 | [indicator removeFromSuperview]; 40 | [self setTitle:currentButtonText forState:UIControlStateNormal]; 41 | self.enabled = YES; 42 | 43 | } 44 | 45 | @end 46 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/Foundation/NSNumber/NSNumber+Addition.m: -------------------------------------------------------------------------------- 1 | // 2 | // NSNumber+Addition.m 3 | // MYKitDemo 4 | // 5 | // Created by sunjinshuai on 2018/3/13. 6 | // Copyright © 2018年 com.51fanxing. All rights reserved. 7 | // 8 | 9 | #import "NSNumber+Addition.h" 10 | #import "NSString+Trims.h" 11 | 12 | @implementation NSNumber (Addition) 13 | 14 | + (NSNumber *)numberWithString:(NSString *)string { 15 | NSString *str = [[string stringByTrim] lowercaseString]; 16 | if (!str || !str.length) { 17 | return nil; 18 | } 19 | 20 | static NSDictionary *dic; 21 | static dispatch_once_t onceToken; 22 | dispatch_once(&onceToken, ^{ 23 | dic = @{@"true" : @(YES), 24 | @"yes" : @(YES), 25 | @"false" : @(NO), 26 | @"no" : @(NO), 27 | @"nil" : [NSNull null], 28 | @"null" : [NSNull null], 29 | @"" : [NSNull null]}; 30 | }); 31 | id num = dic[str]; 32 | if (num) { 33 | if (num == [NSNull null]) return nil; 34 | return num; 35 | } 36 | 37 | // hex number 38 | int sign = 0; 39 | if ([str hasPrefix:@"0x"]) sign = 1; 40 | else if ([str hasPrefix:@"-0x"]) sign = -1; 41 | if (sign != 0) { 42 | NSScanner *scan = [NSScanner scannerWithString:str]; 43 | unsigned num = -1; 44 | BOOL suc = [scan scanHexInt:&num]; 45 | if (suc) 46 | return [NSNumber numberWithLong:((long)num * sign)]; 47 | else 48 | return nil; 49 | } 50 | // normal number 51 | NSNumberFormatter *formatter = [[NSNumberFormatter alloc] init]; 52 | [formatter setNumberStyle:NSNumberFormatterDecimalStyle]; 53 | return [formatter numberFromString:string]; 54 | } 55 | 56 | @end 57 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/UIKit/UIView/UIView+SuperController.m: -------------------------------------------------------------------------------- 1 | // 2 | // UIView+SuperController.m 3 | // MYKitDemo 4 | // 5 | // Created by sunjinshuai on 2017/9/6. 6 | // Copyright © 2017年 com.51fanxing. All rights reserved. 7 | // 8 | 9 | #import "UIView+SuperController.h" 10 | 11 | @implementation UIView (SuperController) 12 | 13 | + (UIViewController *)viewController:(UIView *)view { 14 | for (UIView *next = [view superview]; next; next = next.superview) { 15 | UIResponder *nextResponder = [next nextResponder]; 16 | if ([nextResponder isKindOfClass:[UIViewController class]]) { 17 | return (UIViewController*)nextResponder; 18 | } 19 | } 20 | return nil; 21 | } 22 | 23 | + (UINavigationController *)navigationController:(UIView *)view { 24 | for (UIView *next = [view superview]; next; next = next.superview) { 25 | UIResponder *nextResponder = [next nextResponder]; 26 | if ([nextResponder isKindOfClass:[UINavigationController class]]) { 27 | return (UINavigationController*)nextResponder; 28 | } 29 | } 30 | return nil; 31 | } 32 | 33 | - (UIViewController*)viewController { 34 | for (UIView *next = [self superview]; next; next = next.superview) { 35 | UIResponder* nextResponder = [next nextResponder]; 36 | if ([nextResponder isKindOfClass:[UIViewController class]]) { 37 | return (UIViewController*)nextResponder; 38 | } 39 | } 40 | return nil; 41 | } 42 | 43 | - (UINavigationController *)navigationController{ 44 | UIViewController *viewController = [self viewController]; 45 | if (viewController) { 46 | if (viewController.navigationController) { 47 | return viewController.navigationController; 48 | } 49 | } 50 | return nil; 51 | } 52 | 53 | @end 54 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/UIKit/UITextView/UITextView+InputLengthCalculate.m: -------------------------------------------------------------------------------- 1 | // 2 | // UITextView+InputLengthCalculate.m 3 | // MYKitDemo 4 | // 5 | // Created by sunjinshuai on 2017/9/7. 6 | // Copyright © 2017年 com.51fanxing. All rights reserved. 7 | // 8 | 9 | #import "UITextView+InputLengthCalculate.h" 10 | 11 | @implementation UITextView (InputLengthCalculate) 12 | 13 | - (NSInteger)getInputLengthWithText:(NSString *)text { 14 | NSInteger textLength = 0; 15 | //获取高亮部分 16 | UITextRange *selectedRange = [self markedTextRange]; 17 | if (selectedRange) { 18 | NSString *newText = [self textInRange:selectedRange]; 19 | textLength = (newText.length + 1) / 2 + [self offsetFromPosition:self.beginningOfDocument toPosition:selectedRange.start] + text.length; 20 | } else { 21 | textLength = self.text.length + text.length; 22 | } 23 | return textLength; 24 | } 25 | 26 | - (void)insertAttributedText:(NSAttributedString *)text { 27 | [self insertAttributedText:text settingBlock:nil]; 28 | } 29 | 30 | - (void)insertAttributedText:(NSAttributedString *)text 31 | settingBlock:(void (^)(NSMutableAttributedString *))settingBlock { 32 | NSMutableAttributedString *attributedText = [[NSMutableAttributedString alloc] init]; 33 | // 拼接之前的文字(图片和普通文字) 34 | [attributedText appendAttributedString:self.attributedText]; 35 | 36 | // 拼接其他文字 37 | NSUInteger loc = self.selectedRange.location; 38 | [attributedText replaceCharactersInRange:self.selectedRange withAttributedString:text]; 39 | 40 | // 调用外面传进来的代码 41 | if (settingBlock) { 42 | settingBlock(attributedText); 43 | } 44 | 45 | self.attributedText = attributedText; 46 | 47 | // 移除光标到表情的后面 48 | self.selectedRange = NSMakeRange(loc + 1, 0); 49 | } 50 | 51 | @end 52 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/UIKit/UILabel/UILabel+CountDown.m: -------------------------------------------------------------------------------- 1 | // 2 | // UILabel+CountDown.m 3 | // MYKitDemo 4 | // 5 | // Created by sunjinshuai on 2017/9/6. 6 | // Copyright © 2017年 com.51fanxing. All rights reserved. 7 | // 8 | 9 | #import "UILabel+CountDown.h" 10 | 11 | @implementation UILabel (CountDown) 12 | 13 | - (void)scheduledTimerWithTimeInterval:(NSInteger)timeInterval 14 | countDownText:(NSString *)text 15 | completion:(void (^)(UILabel *countDownLabel))completion { 16 | // 倒计时时间 17 | __block NSInteger timeOut = timeInterval; 18 | dispatch_queue_t queue = dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0); 19 | dispatch_source_t _timer = dispatch_source_create(DISPATCH_SOURCE_TYPE_TIMER, 0, 0, queue); 20 | // 每秒执行一次 21 | dispatch_source_set_timer(_timer, dispatch_walltime(NULL, 0), 1.0 * NSEC_PER_SEC, 0); 22 | dispatch_source_set_event_handler(_timer, ^{ 23 | 24 | // 倒计时结束,关闭 25 | if (timeOut <= 0) { 26 | dispatch_source_cancel(_timer); 27 | dispatch_async(dispatch_get_main_queue(), ^{ 28 | self.userInteractionEnabled = YES; 29 | if (completion) { 30 | completion(self); 31 | } 32 | }); 33 | } else { 34 | int allTime = (int)timeInterval + 1; 35 | int timeInterval = timeOut % allTime; 36 | NSString *timeStr = [NSString stringWithFormat:@"%d", timeInterval]; 37 | dispatch_async(dispatch_get_main_queue(), ^{ 38 | [self setText:[NSString stringWithFormat:@"%@%@", timeStr, text]]; 39 | self.userInteractionEnabled = NO; 40 | }); 41 | timeOut--; 42 | } 43 | }); 44 | 45 | dispatch_resume(_timer); 46 | } 47 | 48 | @end 49 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/UIKit/UINavigationController/UINavigationController+Addition.m: -------------------------------------------------------------------------------- 1 | // 2 | // UINavigationController+Addition.m 3 | // MYUtils 4 | // 5 | // Created by sunjinshuai on 2017/8/28. 6 | // Copyright © 2017年 com.51fanxing. All rights reserved. 7 | // 8 | 9 | #import "UINavigationController+Addition.h" 10 | 11 | @implementation UINavigationController (Addition) 12 | 13 | - (id)findViewController:(NSString *)className { 14 | for (UIViewController *viewController in self.viewControllers) { 15 | if ([viewController isKindOfClass:NSClassFromString(className)]) { 16 | return viewController; 17 | } 18 | } 19 | 20 | return nil; 21 | } 22 | 23 | - (BOOL)isOnlyContainRootViewController { 24 | if (self.viewControllers && 25 | self.viewControllers.count == 1) { 26 | return YES; 27 | } 28 | return NO; 29 | } 30 | 31 | - (UIViewController *)rootViewController { 32 | if (self.viewControllers && [self.viewControllers count] >0) { 33 | return [self.viewControllers firstObject]; 34 | } 35 | return nil; 36 | } 37 | 38 | - (NSArray *)popToViewControllerWithClassName:(NSString *)className 39 | animated:(BOOL)animated { 40 | return [self popToViewController:[self findViewController:className] animated:YES]; 41 | } 42 | 43 | - (NSArray *)popToViewControllerWithLevel:(NSInteger)level animated:(BOOL)animated { 44 | NSInteger viewControllersCount = self.viewControllers.count; 45 | if (viewControllersCount > level) { 46 | NSInteger idx = viewControllersCount - level - 1; 47 | UIViewController *viewController = self.viewControllers[idx]; 48 | return [self popToViewController:viewController animated:animated]; 49 | } else { 50 | return [self popToRootViewControllerAnimated:animated]; 51 | } 52 | } 53 | 54 | @end 55 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/Foundation/NSMutableArray/NSMutableArray+SafeAccess.m: -------------------------------------------------------------------------------- 1 | // 2 | // NSMutableArray+SafeAccess.m 3 | // MYKitDemo 4 | // 5 | // Created by sunjinshuai on 2018/3/1. 6 | // Copyright © 2018年 com.51fanxing. All rights reserved. 7 | // 8 | 9 | #import "NSMutableArray+SafeAccess.h" 10 | 11 | @implementation NSMutableArray (SafeAccess) 12 | 13 | - (void)addSafeObject:(id)object { 14 | 15 | if (object == nil) { 16 | return; 17 | } 18 | [self addObject:object]; 19 | } 20 | 21 | - (void)insertSafeObject:(id)object 22 | index:(NSUInteger)index { 23 | 24 | if (object == nil) { 25 | return; 26 | } 27 | 28 | if (index > self.count) { 29 | [self insertObject:object 30 | atIndex:self.count]; 31 | } else { 32 | 33 | [self insertObject:object 34 | atIndex:index]; 35 | } 36 | } 37 | 38 | - (void)insertSafeArray:(NSArray *)array 39 | indexSet:(NSIndexSet *)indexSet { 40 | 41 | if (indexSet == nil) { 42 | return; 43 | } 44 | 45 | if (indexSet.count != array.count || indexSet.firstIndex > array.count) { 46 | [self insertObject:array 47 | atIndex:self.count]; 48 | } else { 49 | [self insertObjects:array 50 | atIndexes:indexSet]; 51 | } 52 | } 53 | 54 | - (void)safeRemoveObjectAtIndex:(NSUInteger)index { 55 | 56 | if (index >= self.count) { 57 | return; 58 | } 59 | [self removeObjectAtIndex:index]; 60 | } 61 | 62 | - (void)safeRemoveObjectsInRange:(NSRange)range { 63 | 64 | NSUInteger location = range.location; 65 | NSUInteger length = range.length; 66 | 67 | if (location + length > self.count) { 68 | return; 69 | } 70 | [self removeObjectsInRange:range]; 71 | } 72 | 73 | @end 74 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/UIKit/UIBarButtonItem/UIBarButtonItem+Addition.h: -------------------------------------------------------------------------------- 1 | // 2 | // UIBarButtonItem+Addition.h 3 | // FXKitExampleDemo 4 | // 5 | // Created by sunjinshuai on 2017/7/20. 6 | // Copyright © 2017年 com.51fanxing. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface UIBarButtonItem (Addition) 12 | 13 | + (UIBarButtonItem *)barButtonItemWithTarget:(id)target 14 | action:(SEL)action 15 | image:(NSString *)image; 16 | 17 | + (UIBarButtonItem *)barButtonItemWithTarget:(id)target 18 | action:(SEL)action 19 | image:(NSString *)image 20 | selectedImage:(NSString *)selectedImage; 21 | 22 | + (UIBarButtonItem *)barButtonItemWithTarget:(id)target 23 | action:(SEL)action 24 | image:(NSString *)image 25 | highlightedImageName:(NSString *)highlightedImageName; 26 | 27 | + (UIBarButtonItem *)barButtonItemWithTarget:(id)target 28 | action:(SEL)action 29 | title:(NSString *)title 30 | selectedTitle:(NSString *)selectedTitle; 31 | 32 | + (UIBarButtonItem *)barButtonItemWithTarget:(id)target 33 | action:(SEL)action 34 | title:(NSString *)title 35 | highlightedTitle:(NSString *)highlightedTitle; 36 | 37 | + (UIBarButtonItem *)barButtonItemWithTarget:(id)target 38 | action:(SEL)action 39 | title:(NSString *)title 40 | titleColor:(UIColor *)titleColor; 41 | 42 | @end 43 | 44 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/Foundation/NSMutableArray/NSMutableArray+Sort.h: -------------------------------------------------------------------------------- 1 | // 2 | // NSMutableArray+Sort.h 3 | // MYKitDemo 4 | // 5 | // Created by sunjinshuai on 2017/12/4. 6 | // Copyright © 2017年 com.51fanxing. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | typedef NSComparisonResult(^MYSortComparator)(id obj1, id obj2); 12 | typedef void(^MYSortExchangeCallBack)(id obj1, id obj2); 13 | 14 | @interface NSMutableArray (Sort) 15 | 16 | #pragma mark - 选择排序 17 | /*! 18 | * 选择排序 19 | * 20 | * @param comparator 排序的对象 21 | * @param sortExchangeCallBack 回调排序的结果 22 | */ 23 | - (void)selectSortWithComparator:(MYSortComparator)comparator 24 | didExchange:(MYSortExchangeCallBack)sortExchangeCallBack; 25 | 26 | /*! 27 | * 冒泡排序 28 | * 29 | * @param comparator 排序的对象 30 | * @param sortExchangeCallBack 回调排序的结果 31 | */ 32 | - (void)bubbleSortWithComparator:(MYSortComparator)comparator 33 | didExchange:(MYSortExchangeCallBack)sortExchangeCallBack; 34 | 35 | /*! 36 | * 插入排序 37 | * 38 | * @param comparator 排序的对象 39 | * @param sortExchangeCallBack 回调排序的结果 40 | */ 41 | - (void)insertSortWithComparator:(MYSortComparator)comparator 42 | didExchange:(MYSortExchangeCallBack)sortExchangeCallBack; 43 | 44 | /*! 45 | * 快速排序 46 | * 47 | * @param comparator 排序的对象 48 | * @param sortExchangeCallBack 回调排序的结果 49 | */ 50 | - (void)quickSortWithComparator:(MYSortComparator)comparator 51 | didExchange:(MYSortExchangeCallBack)sortExchangeCallBack; 52 | 53 | /*! 54 | * 堆排序 55 | * 56 | * @param comparator 排序的对象 57 | * @param sortExchangeCallBack 回调排序的结果 58 | */ 59 | - (void)heapSortWithComparator:(MYSortComparator)comparator 60 | didExchange:(MYSortExchangeCallBack)sortExchangeCallBack; 61 | 62 | 63 | 64 | @end 65 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/UIKit/UIButton/UIButton+CountDown.m: -------------------------------------------------------------------------------- 1 | // 2 | // UIButton+CountDown.m 3 | // MYKitDemo 4 | // 5 | // Created by sunjinshuai on 2017/9/6. 6 | // Copyright © 2017年 com.51fanxing. All rights reserved. 7 | // 8 | 9 | #import "UIButton+CountDown.h" 10 | 11 | @implementation UIButton (CountDown) 12 | 13 | - (void)scheduledTimerWithTimeInterval:(NSInteger)timeInterval 14 | countDownText:(NSString *)text 15 | completion:(void (^)(UIButton *countDownButton))completion { 16 | // 倒计时时间 17 | __block NSInteger timeOut = timeInterval; 18 | dispatch_queue_t queue = dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0); 19 | dispatch_source_t _timer = dispatch_source_create(DISPATCH_SOURCE_TYPE_TIMER, 0, 0, queue); 20 | // 每秒执行一次 21 | dispatch_source_set_timer(_timer, dispatch_walltime(NULL, 0), 1.0 * NSEC_PER_SEC, 0); 22 | dispatch_source_set_event_handler(_timer, ^{ 23 | 24 | // 倒计时结束,关闭 25 | if (timeOut <= 0) { 26 | dispatch_source_cancel(_timer); 27 | dispatch_async(dispatch_get_main_queue(), ^{ 28 | self.userInteractionEnabled = YES; 29 | if (completion) { 30 | completion(self); 31 | } 32 | }); 33 | } else { 34 | int allTime = (int)timeInterval + 1; 35 | int timeInterval = timeOut % allTime; 36 | NSString *timeStr = [NSString stringWithFormat:@"%d", timeInterval]; 37 | dispatch_async(dispatch_get_main_queue(), ^{ 38 | [self setTitle:[NSString stringWithFormat:@"%@ %@", timeStr, text] forState:UIControlStateNormal]; 39 | self.userInteractionEnabled = NO; 40 | }); 41 | timeOut--; 42 | } 43 | }); 44 | 45 | dispatch_resume(_timer); 46 | } 47 | 48 | @end 49 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/UIKit/UIDevice/UIDevice+Addition.h: -------------------------------------------------------------------------------- 1 | // 2 | // UIDevice+Addition.h 3 | // FXKitExampleDemo 4 | // 5 | // Created by sunjinshuai on 2017/7/21. 6 | // Copyright © 2017年 com.51fanxing. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface UIDevice (Addition) 12 | 13 | /** 14 | 获取UUID 15 | */ 16 | + (NSString *)generateUuidString; 17 | 18 | /** 19 | 设备版本 20 | */ 21 | + (NSString *)deviceModel; 22 | 23 | /** 24 | 手机系统版本 25 | */ 26 | + (NSString *)systemVersion; 27 | 28 | /** 29 | IFV/IDFV (Identifier for Vendor) 30 | */ 31 | + (NSString *)appleIFV; 32 | 33 | /** 34 | 获取当前版本号 35 | */ 36 | + (NSString *)getVersionNumber; 37 | 38 | + (NSString *)platform; 39 | 40 | /** 41 | 获取当前网络运营商的名称 42 | @return 中国移动/中国联通/中国电信或者其他运营商 43 | */ 44 | + (NSString *)getCarrierName; 45 | 46 | /** 47 | 获取当前设备的CPU数量 48 | @return NSUInteger 49 | */ 50 | + (NSUInteger)getCurrentDeviceCPUCount; 51 | 52 | /** 53 | 获取当前设备CPU总的使用百分比 54 | @return CGFloat 55 | */ 56 | + (CGFloat)getCurrentDeviceAllCoreCPUUse; 57 | 58 | /** 59 | 获取当前设备单个CPU使用的百分比 60 | @return NSArray; 61 | */ 62 | + (NSArray *)getCurrentDeviceSingleCoreCPUUse; 63 | 64 | /** 65 | 获取当前设备的单元网络地址 66 | @return NSString 67 | */ 68 | + (NSString *)getCurrentDeviceIPAddressWithCell; 69 | 70 | /** 71 | 获取当前设备的WiFi地址 72 | @return NSString 73 | */ 74 | + (NSString *)getCurrentDeviceIPAddressWithWiFi; 75 | 76 | /** 77 | 获取当前设备的IP地址 78 | 79 | @return NSString 80 | */ 81 | + (NSString *)getCurrentDeviceIPAddresses; 82 | 83 | //Return the current device CPU frequency 84 | + (NSUInteger)cpuFrequency; 85 | // Return the current device BUS frequency 86 | + (NSUInteger)busFrequency; 87 | //current device RAM size 88 | + (NSUInteger)ramSize; 89 | //Return the current device CPU number 90 | + (NSUInteger)cpuNumber; 91 | //Return the current device total memory 92 | + (NSUInteger)totalMemoryBytes; 93 | 94 | @end 95 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/Foundation/NSArray/NSArray+Addition.h: -------------------------------------------------------------------------------- 1 | // 2 | // NSArray+Addition.h 3 | // MYKitDemo 4 | // 5 | // Created by sunjinshuai on 2017/11/18. 6 | // Copyright © 2017年 com.51fanxing. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface NSArray (Addition) 12 | 13 | /** 14 | * 转换成JSON的NSString 15 | */ 16 | - (NSString *)arrayToJson; 17 | 18 | /** 19 | Creates and returns an array from a specified property list data. 20 | 21 | @param plist A property list data whose root object is an array. 22 | @return A new array created from the binary plist data, or nil if an error occurs. 23 | */ 24 | + (nullable NSArray *)arrayWithPlistData:(NSData *)plist; 25 | 26 | /** 27 | Creates and returns an array from a specified property list xml string. 28 | 29 | @param plist A property list xml string whose root object is an array. 30 | @return A new array created from the plist string, or nil if an error occurs. 31 | */ 32 | + (nullable NSArray *)arrayWithPlistString:(NSString *)plist; 33 | 34 | /** 35 | Serialize the array to a binary property list data. 36 | 37 | @return A binary plist data, or nil if an error occurs. 38 | */ 39 | - (nullable NSData *)plistData; 40 | 41 | /** 42 | Serialize the array to a xml property list string. 43 | 44 | @return A plist xml string, or nil if an error occurs. 45 | */ 46 | - (nullable NSString *)plistString; 47 | 48 | /** 49 | Returns the object located at a random index. 50 | 51 | @return The object in the array with a random index value. 52 | If the array is empty, returns nil. 53 | */ 54 | - (nullable id)randomObject; 55 | 56 | /** 57 | Convert object to json string. return nil if an error occurs. 58 | NSString/NSNumber/NSDictionary/NSArray 59 | */ 60 | - (nullable NSString *)jsonStringEncoded; 61 | 62 | /** 63 | Convert object to json string formatted. return nil if an error occurs. 64 | */ 65 | - (nullable NSString *)jsonPrettyStringEncoded; 66 | 67 | @end 68 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/UIKit/UIScreen/UIScreen+Addition.h: -------------------------------------------------------------------------------- 1 | // 2 | // UIScreen+Addition.h 3 | // MYKitDemo 4 | // 5 | // Created by sunjinshuai on 2017/11/18. 6 | // Copyright © 2017年 com.51fanxing. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface UIScreen (Addition) 12 | 13 | /** 14 | * @brief 主屏幕的bounds 15 | * 16 | * @return bounds 17 | */ 18 | + (CGRect)bounds; 19 | 20 | /** 21 | * @brief 主屏幕的size 22 | * 23 | * @return size 24 | */ 25 | + (CGSize)size; 26 | 27 | /** 28 | * @brief 主屏幕的width 29 | * 30 | * @return width 31 | */ 32 | + (CGFloat)width; 33 | 34 | /** 35 | * @brief 主屏幕的height 36 | * 37 | * @return height 38 | */ 39 | + (CGFloat)height; 40 | 41 | /** 42 | * @brief 比例 43 | * 44 | * @return scale 45 | */ 46 | + (CGFloat)scale; 47 | 48 | /** 49 | * @brief 当前屏幕的size 50 | */ 51 | @property (nonatomic, readonly) CGSize size; 52 | 53 | /** 54 | * @brief 当前屏幕的width 55 | */ 56 | @property (nonatomic, readonly) CGFloat width; 57 | 58 | /** 59 | * @brief 当前屏幕的height 60 | */ 61 | @property (nonatomic, readonly) CGFloat height; 62 | 63 | /** 64 | * @brief 状态栏的高度 65 | * 66 | * @return CGFloat 67 | */ 68 | + (CGFloat)statusBarHeight; 69 | 70 | /** 71 | * @brief 导航栏的高度 72 | * 73 | * @return CGFloat 74 | */ 75 | + (CGFloat)navigationBarHeight; 76 | 77 | /** 78 | * @brief tab菜单的高度 79 | * 80 | * @return CGFloat 81 | */ 82 | + (CGFloat)tabBarHeight; 83 | 84 | + (CGFloat)ceilPixelValue:(CGFloat)pixelValue; 85 | 86 | + (CGFloat)roundPixelValu:(CGFloat)pixelValue; 87 | 88 | + (CGFloat)floorPixelValue:(CGFloat)pixelValue; 89 | 90 | + (CGFloat)pixelResize:(CGFloat)value; 91 | 92 | + (CGRect)pixelFrameResize:(CGRect)value; 93 | 94 | + (CGPoint)pixelPointResize:(CGPoint)value; 95 | 96 | + (CGFloat)screenResizeScale; 97 | 98 | + (CGFloat)screenHeightResizeScale; 99 | 100 | @end 101 | -------------------------------------------------------------------------------- /Pods/MYKit/MYKit/Classes/Foundation/NSUserDefaults/NSUserDefaults+SafeAccess.m: -------------------------------------------------------------------------------- 1 | // 2 | // NSUserDefaults+SafeAccess.m 3 | // MYUtils 4 | // 5 | // Created by sunjinshuai on 2017/8/28. 6 | // Copyright © 2017年 com.51fanxing. All rights reserved. 7 | // 8 | 9 | #import "NSUserDefaults+SafeAccess.h" 10 | 11 | @implementation NSUserDefaults (SafeAccess) 12 | 13 | + (NSString *)stringForKey:(NSString *)defaultName { 14 | return [[NSUserDefaults standardUserDefaults] stringForKey:defaultName]; 15 | } 16 | 17 | + (NSArray *)arrayForKey:(NSString *)defaultName { 18 | return [[NSUserDefaults standardUserDefaults] arrayForKey:defaultName]; 19 | } 20 | 21 | + (NSDictionary *)dictionaryForKey:(NSString *)defaultName { 22 | return [[NSUserDefaults standardUserDefaults] dictionaryForKey:defaultName]; 23 | } 24 | 25 | + (NSData *)dataForKey:(NSString *)defaultName { 26 | return [[NSUserDefaults standardUserDefaults] dataForKey:defaultName]; 27 | } 28 | 29 | + (NSArray *)stringArrayForKey:(NSString *)defaultName { 30 | return [[NSUserDefaults standardUserDefaults] stringArrayForKey:defaultName]; 31 | } 32 | 33 | + (NSInteger)integerForKey:(NSString *)defaultName { 34 | return [[NSUserDefaults standardUserDefaults] integerForKey:defaultName]; 35 | } 36 | 37 | + (float)floatForKey:(NSString *)defaultName { 38 | return [[NSUserDefaults standardUserDefaults] floatForKey:defaultName]; 39 | } 40 | 41 | + (double)doubleForKey:(NSString *)defaultName { 42 | return [[NSUserDefaults standardUserDefaults] doubleForKey:defaultName]; 43 | } 44 | 45 | + (BOOL)boolForKey:(NSString *)defaultName { 46 | return [[NSUserDefaults standardUserDefaults] boolForKey:defaultName]; 47 | } 48 | 49 | + (NSURL *)URLForKey:(NSString *)defaultName { 50 | return [[NSUserDefaults standardUserDefaults] URLForKey:defaultName]; 51 | } 52 | 53 | + (void)setObject:(id)value forKey:(NSString *)defaultName { 54 | [[NSUserDefaults standardUserDefaults] setObject:value forKey:defaultName]; 55 | [[NSUserDefaults standardUserDefaults] synchronize]; 56 | } 57 | 58 | @end 59 | --------------------------------------------------------------------------------