2018. 6. 12. 16:24 아이폰

안드로이드 fromHtml 기능을 iOS에서 사용하자 (NSMutableAttributedString)

폰트 종류와 사이즈도 설정이 가능하다


self.popupDesc.attributedText = [UTIL  getHtmlString:desc fontSize:17];



-(NSMutableAttributedString *)getHtmlString:(NSString *) str fontSize:(CGFloat) size

{

    NSMutableAttributedString *attrString= [[NSMutableAttributedString alloc] initWithData:[str dataUsingEncoding:NSUnicodeStringEncoding]

                                                                                   options:@{NSDocumentTypeDocumentAttribute: NSHTMLTextDocumentType,                                NSCharacterEncodingDocumentAttribute: [NSNumber numberWithInt:NSUTF8StringEncoding]

                                                                                             }

                                                                        documentAttributes:nil error:nil];

    [attrString beginEditing];

    [attrString enumerateAttribute:NSFontAttributeName inRange:NSMakeRange(0, attrString.length) options:0 usingBlock:^(id value, NSRange range, BOOL *stop) {

        

        UIFont* font = value;

        font = [UIFont fontWithName:@"AppleSDGothicNeo-Regular" size:size];

        

        [attrString removeAttribute:NSFontAttributeName range:range];

        [attrString addAttribute:NSFontAttributeName value:font range:range];

    }];

    

    [attrString endEditing];

    return attrString;

}


posted by 욱이다
2018. 6. 12. 16:20 안드로이드

volley 라이브러리 한글 깨짐 해결 방법


compile 'com.mcxiaoke.volley:library:1.0.19'


public class Utf8StringRequest extends StringRequest {
public Utf8StringRequest(int method, String url, Response.Listener<String> listener, Response.ErrorListener errorListener) {
super(method, url, listener, errorListener);
}

public Utf8StringRequest(String url, Response.Listener<String> listener, Response.ErrorListener errorListener) {
super(url, listener, errorListener);
}

@Override
protected Response<String> parseNetworkResponse(NetworkResponse response) {
try {
String utf8String = new String(response.data, "UTF-8");
return Response.success(utf8String, HttpHeaderParser.parseCacheHeaders(response));
} catch (UnsupportedEncodingException e) {
// log error
return Response.error(new ParseError(e));
} catch (Exception e) {
// log error
return Response.error(new ParseError(e));
}
}
}


posted by 욱이다
prev 1 next