Utils.h 4.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168
  1. //
  2. // Utils.h
  3. // UPayProject
  4. //
  5. // Created by 张建伟 on 15/1/6.
  6. // Copyright (c) 2015年 张建伟. All rights reserved.
  7. //
  8. #import <Foundation/Foundation.h>
  9. #import <MBProgressHUD/MBProgressHUD.h>
  10. #import <CoreLocation/CoreLocation.h>
  11. #import "FileUtils.h"
  12. #import "AFNetworking.h"
  13. #import "Reachability.h"
  14. //#import "UserGroupEntity.h"
  15. //#import "UserGroupObject.h"
  16. #define kAudioType_AMR @"amr"
  17. #define kAudioType_WAV @"wav"
  18. /**
  19. * 工具类
  20. */
  21. @interface Utils : NSObject<MBProgressHUDDelegate>
  22. +(id)ifNullToNil:(id)objc;
  23. + (NSDictionary *)DeviceInfo;
  24. + (NSString*)DeviceModel;
  25. +(UIBarButtonItem*)createRightbarbutton:(NSString*)title target:(id)target sel:(SEL)sel;
  26. +(UIBarButtonItem*)createRightbarbuttonWithIcon:(NSString*)imageName target:(id)target sel:(SEL)sel;
  27. +(NSString*) uuid;
  28. //+(void)addBack2Navigationitem:(UINavigationItem*)item sel:(SEL)sel res:(id)res;
  29. #pragma mark - - if isMobileNumber and Email kill
  30. //+ (BOOL)isMobileNumber:(NSString *)mobileNum;
  31. //+ (BOOL)isValidEmail:(NSString*)email;
  32. /*
  33. 创建一个新的透明的view 并将他添加到 FootView
  34. */
  35. +(void)setExtraCellLineHidden: (UITableView *)tableView;
  36. /*
  37. 等比缩放图片
  38. */
  39. + (UIImage *)scaleImage:(UIImage *)image toScale:(float)scaleSize;
  40. /**
  41. * 缩放到指定大小图片(省内存)
  42. *
  43. * @param img <#img description#>
  44. * @param size <#size description#>
  45. *
  46. * @return <#return value description#>
  47. */
  48. + (UIImage *)scaleToSize:(UIImage *)img size:(CGSize)size;
  49. /*
  50. 通过颜色创建image
  51. */
  52. + (UIImage *)creatImageWithPureColor:(UIColor *)color;
  53. //返回高度一致,不变形的图片.
  54. + (UIImage *)scaleRigthSizeImageWithTargetView:(UIView *)targetView origionlImage:(UIImage *)origionalImage;
  55. /**
  56. * 根据文字计算长度
  57. *
  58. * @return size
  59. */
  60. + (CGSize)getSizeFromText:(NSString *)text maxWidth:(CGFloat)maxWidth withFloatFont:(float)floatFont;
  61. +(NSString *)avatarPath;
  62. //+(NSString *)avatarPathWithUserID:(NSString *)userID;
  63. //登录页面根据上次记住的用户名头像获取
  64. +(NSString *)avatarPathWithLoginName:(NSString *)loginname;
  65. //读取用户头像图片
  66. +(void)loadUserAvatar:(UIImageView *)headerImageView imageUrl:(NSString*) imageUrl;
  67. ////从缓存中获取自己的头像
  68. //+(void)loadMyAvatar:(UIImageView *)headerImageView;
  69. /**
  70. * 解析pc图文混编消息
  71. *
  72. * @param expression 正则表达式
  73. * @param content 原始内容
  74. * @param resultBlock array content
  75. */
  76. + (void)getPCScreenPhotoAndTextWithExpression:(NSString *)expression content:(NSString *)content resultBlock:(void(^)(NSArray *subData))resultBlock;
  77. +(NSData*)getScaledPhotoData:(UIImage*) theImage;
  78. /**
  79. * 查询addrbook获取用户默认头像,如果没有则创建
  80. *
  81. * @param uuid 唯一识别号,serverid+loginname
  82. *
  83. * @return image
  84. */
  85. + (UIImage *)getDefaultAvatarWithUserUUID:(NSString *)uuid isOffLine:(BOOL)isoffline;
  86. /**
  87. * 根据已知view生成image
  88. *
  89. * @param view <#view description#>
  90. *
  91. * @return <#return value description#>
  92. */
  93. + (UIImage *) imageWithView:(UIView *)view;
  94. /**
  95. * 根据群获取群头像
  96. *
  97. * @param group UserGroupEntity
  98. *
  99. * @return uiimage
  100. */
  101. //+ (UIImage *)getGroupHeaderImageWithGroup:(UserGroupEntity *)group;
  102. //+ (UIImage *)getGroupHeaderImageWithGroupWithObject:(UserGroupObject *)group;
  103. //
  104. //+ (UIImageView *)getGroupHeaderImageViewWithGroupWithObject:(UserGroupObject *)group;
  105. /**
  106. * net work status check
  107. *
  108. * @param success_block yes
  109. * @param fail_block no
  110. */
  111. + (void) netWorkType:(void(^)(AFNetworkReachabilityStatus status))success_block fail:(void(^)())fail_block;
  112. /**
  113. * 系统级判断是否有网络
  114. *
  115. * @return yes/no
  116. */
  117. + (BOOL)isEnableNetWork;
  118. /**
  119. * MBHUDView show
  120. */
  121. /**
  122. * 根据文件名返回对应的图标
  123. *
  124. * @param fileName xx.yy
  125. *
  126. * @return 图标名
  127. */
  128. + (NSString *)getIconWithFileName:(NSString *)fileName;
  129. + (void)showSuccessToView:(UIView *)view;
  130. + (void)showFailureToView:(UIView *)view;
  131. + (void)showError:(NSString *)error ToView:(UIView *)view;
  132. + (void)showWaitingToView:(UIView *)view;
  133. + (void)showWaitingWithMessage:(NSString *)message ToView:(UIView *)view;
  134. + (void)HiddenWaitingToView:(UIView *)view;
  135. + (void)showError:(NSString *)error toView:(UIView *)view finish:(void(^)())block;
  136. + (void)showSuccess:(NSString *)success toView:(UIView *)view finish:(void(^)())block;
  137. /**
  138. * 重新排序数组
  139. *
  140. * @param orinalArray 原始数组
  141. * @param fromIndex 原地址
  142. * @param toIndex 目标地址
  143. *
  144. * @return 排序后数组
  145. */
  146. + (NSMutableArray *)sortArray:(NSMutableArray *)orinalArray FromIndex:(NSUInteger)fromIndex ToIndex:(NSUInteger)toIndex;
  147. @end