ZPCategory

ZPCategory

目錄


  1. 宏文件
  2. NSString
  3. NSDate
  4. NSTimer
  5. NSDictionary
  6. UITextField
  7. UITextView
  8. UIButton
  9. UIImage
  10. UIViewController

宏文件

這個文件中主要有如下幾個功能:html

  1. 開發環境和正式環境的配置;
  2. 項目中集成的第三方的配置;
  3. RGB顏色;
  4. 弱引用self;
  5. 屏幕寬&高;
  6. 狀態欄&Tabbar&SafeArea的數值;
  7. 設備的判斷;

NSString

字符串寬度&&高度

1.根據字體&高度,獲取字符串的寬度(沒有行高)ios

- (float)widthWithFont:(UIFont *)font height:(float)height;
複製代碼

2.根據字體&寬度,獲取字符串的高度(沒有行高)git

- (float)heightWithFont:(UIFont *)font width:(float)width;
複製代碼

3.根據字體&寬度&行高,獲取字符串改的高度;github

- (float)heightWithFont:(UIFont *)font width:(float)width lineSpacing:(float)lineSpacing;
複製代碼

4.根據字體&寬度&行高,獲取字符串的Size;正則表達式

- (CGSize)sizeWithFont:(UIFont *)font width:(float)width lineSpacing:(float)lineSpacing;
複製代碼

字符串 正則表達式

1.判斷是否是手機號ide

- (BOOL)isValidateMobile;
複製代碼

2.判斷是否是固定電話字體

- (BOOL)isValidatePhone;
複製代碼

3.判斷是否是客服電話ui

- (BOOL)is400Phone;
複製代碼

4.判斷是否是身份證編碼

- (BOOL)isIdCard;
複製代碼

數據類型額判斷

1.是不是正整數atom

- (BOOL)isPositiveInteger;
複製代碼

2.是不是浮點數

- (BOOL)isFloat;
複製代碼

3.檢查輸入字符串是否只由英文字母和數字組成

- (BOOL)isNumberOrLetter;
複製代碼

4.檢查輸入字符串是否只由漢字和英文字母組成

- (BOOL)isChineseOrLetter;
複製代碼

5.是否爲空字符串

- (BOOL)isBlankString;
複製代碼

NSString->NSAttributedString

1.NSString->NSAttributedString 帶有行高屬性

- (NSAttributedString *)toAttributeStringWithLineSpacing:(float)lineSpacing;
複製代碼

NSString 計算字節長度

/** 計算字符串的字節長度 * 中文 = 2 * 英文或者數字 = 1 * 表情 = 4 @return NSUInteger */
- (NSUInteger)charactorNumber;

/** 根據不一樣的編碼方式計算字節長度 @param encoding 編碼方式 @return NSUInteger */
- (NSUInteger)charactorNumberWithEncoding:(NSStringEncoding)encoding;

/** calulate the number of charactor. 1 Chinese(not including Chinese mark) = 2 1 other charactor = 1 @return NSUInteger */
- (NSUInteger)charactorNumberForChineseSpecial;
複製代碼

這是我從github的一位仁兄哪裏收集到的LXKit 想要了解的能夠點擊進去詳細瞭解。

字符串加密

1.MD5

- (NSString *)md5;
複製代碼

2.SHA1

- (NSString *)SHA1;
複製代碼

字符串過濾

1.去除兩端空格和回車

- (NSString *)trim;
複製代碼

2.僅去除兩端空格

- (NSString *)trimOnlyWhitespace;
複製代碼

3.去除html格式

+ (NSString *)filterHtml:(NSString *)html;
複製代碼

根據圖片名字返回圖片

1.根據圖片名字返回圖片

- (UIImage *)toImage;
複製代碼

NSDate

1.NSDate -> NSString

- (NSString *)formatString:(NSString *)dateFormat;
複製代碼

2.根據unix時間戳構造NSDate

+ (NSDate *)dateWithUnixTime:(double)unixtime;
複製代碼

3.將時間轉化爲0秒模式

+ (NSDate *)changeDateToZeroMinutDate:(NSDate *)date;
複製代碼

4.得到指定月份的第一天和最後一天

+ (NSArray *)getFirstAndLastDayOfThisMonthWithNsDate:(NSDate *)date;
複製代碼

NSTimer

1.用block的方式穿件定時器

+ (NSTimer *)scheduledTimerWithTimeInterval:(NSTimeInterval)timeInterval block:(void (^)(void))block repeat:(BOOL)repeat;
複製代碼

NSDictionary

數據類型的Get

1.設置一個BOOL值

- (BOOL)boolForKey:(NSString *)key;
複製代碼

2.設置一個NSInteger值

- (NSInteger)integerForKey:(NSString *)key;
複製代碼

3.設置一個int值

- (int)intForKey:(NSString *)key;
複製代碼

4.設置一個double值

- (double)doubleForKey:(NSString *)key;
複製代碼

5.設置一個float值

- (float)floatForKey:(NSString *)key;
複製代碼

6.設置一個long long值

- (long long)longLongForKey:(NSString *)key;
複製代碼

7.設置一個unsigned long long值

- (unsigned long long)unsignedLongLongForKey:(NSString *)key;
複製代碼

8.設置一個NSString值

- (NSString *)stringForKey:(NSString *)key;
複製代碼

9.設置一個NSArray值

- (NSArray *)arrayForKey:(NSString *)key;
複製代碼

10.value爲空時,不set此key

- (void)safeValue:(id)value forKey:(NSString *)key;
複製代碼

UITextField

最大長度和只能夠輸入數字的屬性添加

/** 最大長度 */
@property (nonatomic, assign) NSInteger maxLength;

/** 是否只能夠輸入數字 */
@property (nonatomic, assign) BOOL canOnlyInputNumber;
複製代碼

LeftView

1.設置leftview爲圖片

/** * 設置leftview爲圖片 * * @param imageName 圖片名稱 */
- (void)setLeftViewWithImageName:(NSString *)imageName;
複製代碼

2.設置leftView爲文字

/** * 設置leftView爲文字 * */
- (void)setLeftViewWithText:(NSString *)text;
複製代碼

3.設置leftView爲文字

/** * 設置leftView爲文字 * * @param text 文字 * @param minWidth 最小寬度 */
- (void)setLeftViewWithText:(NSString *)text minWidth:(CGFloat)minWidth;
複製代碼

4.設置leftView爲文字

/** * 設置leftView爲文字 * * @param text 文字 * @param minWidth 最小寬度 * @param color 佔位文字顏色 */
- (void)setLeftViewWithText:(NSString *)text minWidth:(CGFloat)minWidth color:(UIColor *)color;
複製代碼

RightView

1.設置rightView爲文字

/** * 設置rightView爲文字 * * @param text 文字 */
- (void)setRightViewWithText:(NSString *)text;
複製代碼

2.設置rightView爲圖片

/** * 設置rightView爲圖片 * * @param imageName 圖片名稱 */
- (void)setRightViewWithImageName:(NSString *)imageName;
複製代碼

3.設置rightView爲button

/** * 設置rightView爲button * * @param imageName 圖片名稱 */
- (void)setRightViewButtonWithImageName:(NSString *)imageName taget:(id)taget selector:(SEL)selector;
複製代碼

Padding

1.設置UITextField左側內邊距

/** * 設置UITextField左側內邊距 * * @param padding 距離 */
- (void)setPaddingLeftSpace:(float)padding;
複製代碼

2.設置UITextField右側內邊距

/** * 設置UITextField右側內邊距 * * @param padding 距離 */
- (void)setPaddingRightSpace:(float)padding;
複製代碼

UI顯示

1.設置底部邊框

/** * 設置底部邊框 * * @param lineColor 邊框顏色 */
- (void)setBottomBorderLineWithColor:(UIColor *)lineColor;
複製代碼

2.設置placeholder的顏色

/** * 設置placeholder的顏色 * */
- (void)setPlaceholderColor:(UIColor *)color;
複製代碼

3.設置下劃線出去左邊的文字

/** * 設置下劃線出去左邊的文字 */
- (void)setLeftViewWithText:(NSString *)text minWidth:(CGFloat)minWidth withOutTextBottomLineColor:(UIColor *)color;
複製代碼

UITextView

增長 placeHolder & placeHolderFont 屬性

@property (nonatomic, copy) NSString *placeHolder;

@property (nonatomic, strong) UIFont *placeHolderFont;
複製代碼

UButton

點擊方式換成block方式

/** * UIButton+Block * * @param controlEvent 觸摸事件 * @param action 執行的方法 */
- (void)handleControlEvent:(UIControlEvents)controlEvent withBlock:(ActionBlock)action;
複製代碼

UIImage

返回相片的主要顏色

/** 返回相片的主要顏色 @param image 圖片 @return 返回的顏色色值 */
+ (UIColor*)mostColor:(UIImage *)image;
複製代碼

UIViewController

NavigationBar

1.設置左側Navigationbar爲「返回」(使用backBarButtonItem)

/** * 設置左側Navigationbar爲「返回」(使用backBarButtonItem) */
- (void)setLeftNavigationBarToBack;
複製代碼

2.設置左側Navigationbar爲「返回」(使用leftbarbutton)

/** * 設置左側Navigationbar爲「返回」(使用leftbarbutton) * * @param block 點擊時執行的block代碼 */
- (void)setLeftNavigationBarToBackWithBlock:(void (^)(void))block;
複製代碼

3.爲左側後退Navigationbar增長確認提示框

/** * 爲左側後退Navigationbar增長確認提示框 */
- (void)setLeftNavigationBarToBackWithConfirmDialog;
複製代碼

4.設置NavigationBar(文字)

/** * 設置NavigationBar(文字) * * @param position 位置 * @param text 文字 * @param block 點擊後執行的代碼 */
- (void)setNavigationBar:(NavigationBarPosition)position withText:(NSString *)text touched:(void (^)(void))block;
複製代碼

5.設置NavigationBar(圖片)

/** * 設置NavigationBar(圖片) * * @param position 位置 * @param imageName 圖片名稱 * @param block 點擊後執行的代碼 */
- (void)setNavigationBar:(NavigationBarPosition)position withImageName:(NSString *)imageName touched:(void (^)(void))block;
複製代碼

6.設置NavigationBar(圖片)

/** * 設置NavigationBar(圖片) * * @param position 位置 * @param imageName 圖片名稱 * @param block 點擊後執行的代碼 */
- (void)setNavigationBar:(NavigationBarPosition)position withImageName:(NSString *)imageName spacing:(NSInteger)spacing touched:(void (^)(void))block;
複製代碼

7.設置NavigationBar(文字)

/** * 設置NavigationBar(文字) * * @param position 位置 * @param text 文字 * @param color 文字顏色 * @param block 點擊後執行的代碼 */
- (void)setNavigationBar:(NavigationBarPosition)position withText:(NSString *)text withColor:(UIColor *)color touched:(void (^)(void))block;
複製代碼

8.設置NavigationBar(文字)

/** * 設置NavigationBar(文字) * * @param position 位置 * @param text 文字 * @param color 文字顏色 * @param font 字體 * @param block 點擊後執行的代碼 */
- (void)setNavigationBar:(NavigationBarPosition)position withText:(NSString *)text withColor:(UIColor *)color withFont:(UIFont *)font touched:(void (^)(void))block;
複製代碼

9.設置NavigationBar隱藏或顯示

/** * 設置NavigationBar隱藏或顯示 * * @param position 位置 * @param hidden YES:隱藏 NO:顯示 */
- (void)hiddenNavigationBar:(NavigationBarPosition)position hidden:(BOOL)hidden;
複製代碼

10.跳轉到指定的ViewController

/** * 跳轉到指定的ViewController * * @param viewControllerClass 控制器類型 */
- (void)popToViewController:(Class)viewControllerClass;
複製代碼

11.NavigationController裏上一個ViewController

/** * NavigationController裏上一個ViewController * */
- (UIViewController *)previosViewController;
複製代碼

12.移除當前NavigationController裏ViewController的上一個ViewController

/** * 移除當前NavigationController裏ViewController的上一個ViewController */
- (void)removePreviosViewControllerInNavigationControllers;
複製代碼

13.添加多個按鈕時

/** * 添加多個按鈕時 * * @param position 位置 * @param array buttonImageNameAndButtonTypeArray * @param target 目標 * @param selector 響應方法 */

- (void)setNavigationBar:(NavigationBarPosition)position withImageNameAndButtonTypeArray:(NSArray *)array target:(id)target selectors:(SEL)selector;
複製代碼

14.移除navigationbutton

/** * 移除navigationbutton * * @param position 位置 */
- (void)removeNavigationBarBar:(NavigationBarPosition)position;
複製代碼

StoryBoard

1.從storyboard中初始化ViewController

/** * 從storyboard中初始化ViewController * * @param storyBoardName storyboard名稱 * @param identifier ViewController標識符 * * @return ViewController實例 */
+ (instancetype)viewControllerFromStoryBoard:(NSString *)storyBoardName withIdentifier:(NSString *)identifier;
複製代碼

傳送門

github.com/cAibDe/ZPCa…

本站公眾號
   歡迎關注本站公眾號,獲取更多信息