Files
real-e-party-iOS/YuMi/CustomUI/UIImageView/UIImageConstant.m
2025-10-17 14:52:29 +08:00

118 lines
3.2 KiB
Objective-C

// Created by YUMI on 2021/9/17.
#import "UIImageConstant.h"
@implementation UIImageConstant
NSString * const kImageTypeRoomFace = @"";
NSString * const kImageTypeRoomGift = @"";
NSString * const kImageTypeUserIcon = @"imageMogr2/auto-orient/thumbnail/150x150";
NSString * const kImageTypeUserLibaryDetail = @"imageMogr2/auto-orient/thumbnail/300x300";
NSString * const kImageTypeCornerAvatar = @"imageMogr2/auto-orient/thumbnail/300x300/format/png";
NSString * const kImageTypeUserInfoAlbum = @"imageMogr2/auto-orient/blur/375x375";
NSString * const kImageTypeUserCardLevel = @"imageMogr2/thumbnail/x40";
NSString * const kImageTypeMonentsPhoto = @"imageMogr2/auto-orient/thumbnail/400x400";
+ (UIImage *)defaultAvatarPlaceholder {
return [UIImage imageNamed:@"common_avatar"];
}
+ (UIImage *)defaultEmptyAvatarPlaceholder {
return [UIImage imageNamed:@"common_avatar"];
}
+ (UIImage *)defaultEmptyPlaceholder {
return [UIImage imageNamed:@"common_empty"];
}
+ (UIImage *)defaultBannerPlaceholder {
return [UIImage imageNamed:@"common_banner"];
}
+ (UIImage *)defaultEmptyPlaceholder_UFO {
return [UIImage imageNamed:@"common_empty_UFO"];
}
+ (NSString *)configUrl:(NSString *)url type:(ImageType)type {
return [self configUrl:url type:type radius:0];
}
+ (NSString *)configUrl:(NSString *)url radius:(CGFloat)radius {
return [self configUrl:url type:-1 radius:radius];
}
+ (NSString *)configUrl:(NSString *)url type:(ImageType)type radius:(CGFloat)radius {
if (!url || url.length <= 0) return nil;
NSMutableString *urlString = [NSMutableString stringWithString:url];
NSString *configUrl = nil;
switch (type) {
case ImageTypeUserIcon:
configUrl = kImageTypeUserIcon;
break;
case ImageTypeCornerAvatar:
configUrl = kImageTypeCornerAvatar;
break;
case ImageTypeRoomFace:
configUrl = kImageTypeRoomFace;
break;
case ImageTypeUserLibaryDetail:
configUrl = kImageTypeUserLibaryDetail;
break;
case ImageTypeRoomGift:
configUrl = kImageTypeRoomGift;
break;
case ImageTypeUserInfoAlbum:
configUrl = kImageTypeUserInfoAlbum;
break;
case ImageTypeUserCardLevel:
configUrl = kImageTypeUserCardLevel;
break;
case ImageTypeMonentsPhoto:
configUrl = kImageTypeMonentsPhoto;
break;
default:
break;
}
if (configUrl) {
if ([url containsString:@"?"]) {
[urlString appendString:@"|"];
}else{
[urlString appendString:@"?"];
}
[urlString appendString:configUrl];
}
if (radius > 0) {
[urlString appendString:[NSString stringWithFormat:@"|roundPic/radius/%f", radius]];
}
return percentEscapeString(urlString);
}
NSString *percentEscapeString(NSString *string) {
NSMutableCharacterSet *allowedCharacterSet = [[NSCharacterSet URLQueryAllowedCharacterSet] mutableCopy];
[allowedCharacterSet removeCharactersInString:@"|"];
return [string stringByAddingPercentEncodingWithAllowedCharacters:allowedCharacterSet];
}
@end