stringByAddingPercentEscapesUsingEncoding 已弃用

Ren*_*dey 4 objective-c

这是已弃用的“stringByAddingPercentEscapesUsingEncoding”,我想用更新一替换这一行。

NSString *encodedString = [modalData.imageURL stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
Run Code Online (Sandbox Code Playgroud)

Ron*_*ara 5

尝试下面的代码行:

NSString *encodedString = [modalData.imageURL stringByAddingPercentEncodingWithAllowedCharacters:[NSCharacterSet URLHostAllowedCharacterSet]];
Run Code Online (Sandbox Code Playgroud)

stringByAddingPercentEncodingWithAllowedCharacters:

通过用百分比编码字符替换不在指定集中的所有字符,返回由接收者生成的新字符串。

字符集传递给 - stringByAddingPercentEncodingWithAllowedCharacters

+ (NSCharacterSet *)URLUserAllowedCharacterSet;
+ (NSCharacterSet *)URLPasswordAllowedCharacterSet;
+ (NSCharacterSet *)URLHostAllowedCharacterSet;
+ (NSCharacterSet *)URLPathAllowedCharacterSet;
+ (NSCharacterSet *)URLQueryAllowedCharacterSet;
+ (NSCharacterSet *)URLFragmentAllowedCharacterSet;
Run Code Online (Sandbox Code Playgroud)

参考:https ://developer.apple.com/reference/foundation/nsstring/1411946-stringbyaddingpercentencodingwit