2016-10-25 3 views
0

iOS 기본 키보드의 텍스트 입력 및 그림 이모티콘을 사용하여 서버로 보내고 텍스트를 라벨로 표시하려고하지만 emojis.it 만 표시 할 수는 있지만 emojis는 표시 할 수 없습니다. . 내가 이모티콘을 표시하는 것보다 로컬로 처리하는 경우.ios 기본 키보드의 레이블에 그림 이모티콘 사용

self.labelName.text = TextFiled.text 

출력 : "테스트"

하지만 난 서버로 보내고 이모티콘가 없어보다 API에서에서받을 보낼 때. 출력 : "테스트"

아래로 해달라고 어떤 이유로 서버 사용이 방법을 데이터를 전송

+0

참조 표시 http://stackoverflow.com/questions/ :

message.encodeChatString() 

당신은 메시지를 디코드 문자열을 아래와 같이받을 때 11382753/change-the-keyboard-layout-to-emoji. 사용자 지정 키보드를 만들고 이모티콘을 표시 할 수 있습니다. – Signare

+0

코드에서 이모티콘 사용법을 보여줄 수 있습니까? 지금까지 한 일을 보여 주면 코드 노력에 따라 안내 할 것입니다. – CodeChanger

+0

알파벳과 그림을 모두 사용하고 싶습니다. @Signare –

답변

1

없이 내 질문에 투표 해주세요.

let data1 = txtMessage.text.dataUsingEncoding(NSNonLossyASCIIStringEncoding)! 
let finalmessage = String(data: data1, encoding: NSUTF8StringEncoding) 

이 방법을 사용하기 전에 라벨에 설정 서버에서 응답을받을.

let trimmedString = YOURSERVER_RESPONSE_STRING.stringByTrimmingCharactersInSet(
       NSCharacterSet.whitespaceAndNewlineCharacterSet()) 
let data2 = trimmedString.dataUsingEncoding(NSUTF8StringEncoding)! 
let messagestring = String(data: data2, encoding: NSNonLossyASCIIStringEncoding) 
YOURLABEL.text = messagestring as String 

이 문제를 해결하십시오.

+0

누가 내 대답을 왜 투표 해주지? 이유를 말해줘. 내 프로젝트에서 나를 위해 그 일하는 벌금 –

+0

didnot work !! 여전히 이모티콘을 표시하지 않습니다. 나는 당신이 투표하는 투표를하는 사람이 아닙니다. –

+0

당신의 질문을 당신이 서버로 보내고 당신이 서버로부터 응답을 받았을 때 그것을 업데이트하십시오. –

2

스위프트 3.0 확장 솔루션 :

서버로 보낼 때 당신은 아이폰 OS 측에서 이모티콘의 인코딩 및 디코딩 할 필요가

. 당신은 아래와 같이 할 수 있습니다. 당신이 인코딩 문자열 아래와 같은 메시지를 보낼 때

extension String { 

    func encodeChatString() -> String? { 
     if let encodedTextData = self.data(using: .nonLossyASCII) { 
      return String(data: encodedTextData, encoding: .utf8) 
     } 

     return nil 
    } 

    func decodeChatString() -> String? { 
     let trimmedString = self.trimmingCharacters(in: .whitespacesAndNewlines) 
     if let stringData = trimmedString.data(using: .utf8) { 
      let messageString = String(data: stringData, encoding: .nonLossyASCII) 
      return messageString 
     } 

     return nil 
    } 
} 

는 :

message.decodeChatString()