NSObject+RQExtension.h 2.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677
  1. //
  2. // NSObject+RQExtension.h
  3. // RQCommon
  4. //
  5. // Created by 张嵘 on 2018/11/21.
  6. // Copyright © 2018 张嵘. All rights reserved.
  7. //
  8. #import <Foundation/Foundation.h>
  9. NS_ASSUME_NONNULL_BEGIN
  10. @interface NSObject (RQExtension)
  11. #pragma mark - Other
  12. /// 获取 [from to] 之间的数据
  13. + (NSInteger)rq_randomNumberWithFrom:(NSInteger)from to:(NSInteger)to;
  14. /// 根据获取到的
  15. - (void)rq_convertNotification:(NSNotification *_Nullable)notification completion:(void (^ __nullable)(CGFloat duration, UIViewAnimationOptions options, CGFloat keyboardH))completion;
  16. #pragma mark - Get..
  17. /// Get class
  18. - (BOOL)rq_isStringClass;
  19. - (BOOL)rq_isNumberClass;
  20. - (BOOL)rq_isArrayClass;
  21. - (BOOL)rq_isDictionaryClass;
  22. - (BOOL)rq_isStringOrNumberClass;
  23. - (BOOL)rq_isNullOrNil;
  24. - (BOOL)rq_isExist;
  25. /// Get value
  26. - (NSString *_Nullable)rq_stringValueExtension;
  27. #pragma mark - Alert
  28. /**
  29. 弹出alertController,并且只有一个action按钮,切记只是警示作用,无事件处理
  30. @param title title
  31. @param message message
  32. @param confirmTitle confirmTitle 按钮的title
  33. */
  34. + (void)rq_showAlertViewWithTitle:(NSString * _Nullable )title message:(NSString * _Nullable )message confirmTitle:(NSString *)confirmTitle;
  35. /**
  36. 弹出alertController,并且只有一个action按钮,有处理事件
  37. @param title title
  38. @param message message
  39. @param confirmTitle confirmTitle 按钮title
  40. @param confirmAction 按钮的点击事件处理
  41. */
  42. + (void)rq_showAlertViewWithTitle:(NSString * _Nullable )title message:(NSString * _Nullable )message confirmTitle:(NSString *)confirmTitle confirmAction:(void(^__nullable)(void))confirmAction;
  43. /**
  44. 弹出alertController,并且有两个个action按钮,分别有处理事件
  45. @param title title
  46. @param message Message
  47. @param confirmTitle 右边按钮的title
  48. @param cancelTitle 左边按钮的title
  49. @param confirmAction 右边按钮的点击事件
  50. @param cancelAction 左边按钮的点击事件
  51. */
  52. + (void)rq_showAlertViewWithTitle:(NSString * _Nullable )title message:(NSString * _Nullable )message confirmTitle:(NSString *)confirmTitle cancelTitle:(NSString * _Nullable )cancelTitle confirmAction:(void(^)(void))confirmAction cancelAction:(void(^__nullable)(void))cancelAction;
  53. #pragma mark - Safe
  54. + (void)methodSwizzlingWithOriginalSelector:(SEL)originalSelector
  55. bySwizzledSelector:(SEL)swizzledSelector;
  56. @end
  57. NS_ASSUME_NONNULL_END