最简单的使用UIlabel支持Emoji表情
应用场景:很多时候我们的app需要支持表情和文字混排发布消息或者评论等,这是我们如果不做任何操作,就可能会遇到及时能够发送成功,但是服务器无法写入数据库,导致能发送不能展示的问题(服务端自己解决除外),下面是简单的两个方法(方法建议写到类扩展里)在前端解决此类问题.
上传时编码
/**编码*/
+(NSString *)encodeing:(NSString *)string {
//encodeing
NSData *plainData = [string dataUsingEncoding:NSUTF8StringEncoding];
return [plainData base64EncodedStringWithOptions:0];
}
获取数据后解码
/**解码*/
+(NSString *)unEncodeing:(NSString *)string {
//解码
NSData *decodedData = [[NSData alloc] initWithBase64EncodedString:string options:0];
return [[NSString alloc] initWithData:decodedData encoding:NSUTF8StringEncoding];
}
发送时伪代码调用事例
NSMutableDictionary *params = [NSMutableDictionary dictionary];
params[@"text"] = [NSString encodeing:self.textView.text];
[HttpTool post:commentBlog parameters:params success:^(id responseObject) {
} faliure:^(NSError *error) {
}];
解码时伪代码调用事例
self.textLable.text = [NSString unEncodeing:@"这里是服务端返回的数据"];
网友评论