2017-12-23 40 views
1

서버에 저장된 JSON 파일에서 utf-8 형식의 텍스트를 다운로드하려고합니다. 그러면이 파일은 UILabel의 텍스트로 사용됩니다.utf-8 텍스트를 UILabel로 변환

는 지금, 나는

2) 그 글꼴 크기로 변경 될 수 있습니다, 18 말을 목표 원문

1

)이 대담 수 있도록 내가 텍스트에 포함해야하는지 코드 모른다 예를 들어 UILabel

의 기본 15 : < 내부

< b>Topic< /b> (공백없이> 실제로, 단지 아보 시도 이드는 여기에 서식 문제가 ..). 그냥 내가 문장 후 새 줄을 열려면, 다음 작업을 수행 할 수있는, 같은 :

,

는 것 "이 첫 번째 문장을 \ 연구 \ n이는 두 번째 문장입니다" UILabel

출력에 다음과 같이 나타납니다 : 도움을

This is the first sentence 

This is the second sentence 

감사합니다!

+0

u는 더 많은 질문을 정교하게 할 수 있습니다. –

+0

더 자세히 설명해주세요. –

+0

UILabel이 "hello"텍스트가 굵은 글씨 "hello"으로 표시 될 수 있다고 말하면서, UILabel이 원하는 형식을 표시 할 수 있도록 내 JSON 파일의 문자열 텍스트에 어떤 코드를 포함시켜야 하는지를 의미합니다. 감사! – Howard

답변

1

당신이하는 방식은 Attributed string으로 알고 있거나 formated string으로 말할 수 있습니다.

당신은 문자열의 HTML 엔티티를 사용하고 이러한 HTML 엔티티는 다음 folloeing 할 필요는 태그에 따라 반영 원하는대로 : Atrributed 문자열에

  1. 변환 HTML을.
  2. 귀속 문자열을 label으로 지정하십시오.

코드

  1. 는 기인 문자열에 대한 간단한 문자열을 변환합니다.

    extension String{ 
    func convertHtml() -> NSAttributedString{ 
        guard let data = data(using: .utf8) else { return NSAttributedString() } 
        do{ 
         return try NSAttributedString(data: data, options: [NSDocumentTypeDocumentAttribute: NSHTMLTextDocumentType, NSCharacterEncodingDocumentAttribute: String.Encoding.utf8.rawValue], documentAttributes: nil) 
        }catch{ 
         return NSAttributedString() 
        } 
        } 
    } 
    
  2. 특성이 지정된 텍스트로 지정하십시오.

    self.lblAtt.attributedText = STRHTML2.convertHtml() 
    

테스트 문자열 : "hello, <b>john</b>"

출력 :

enter image description here

+2

이것은 무단으로 https://stackoverflow.com/a/47438036/1187415에서 복사 한 것 같습니다. –

+0

@MartinR Im은 그 게시물에 대해 인식하지 못했습니다. 그래도 똑같습니다.하지만이 텍스트를 내 프로젝트에서 복사했습니다.이 텍스트는 이처럼 다루기 전에 많은 mnths가 시작되었습니다. –

+0

많은 도움을 주셔서 감사합니다 dahiya_boy! – Howard