2013-05-13 1 views
8

: 그들은 때문에SpannableString하지 내가 다음과 같이 SpannableString를 사용하여 글고 치기로 몇 가지 이미지를 추가하는 코드 조각이

SpannableString ss = new SpannableString("Some random String in my application."); 
Drawable d = getResources().getDrawable(R.drawable.emoticon_0001); 
ImageSpan span = new ImageSpan(d, ImageSpan.ALIGN_BOTTOM); 
ss.setSpan(span, startIndex, endIndex, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE); 

일부 인덱스 계산하는 사이에이 나는 포함되지 않았다 중요하지 않습니다. 코드가 제대로 작동합니다. 비 편집 모드에서

세로 및 가로 : 여기에 몇 가지 그것의 이미지입니다 내가 가로 모드에서 편집하기 시작하면, 그러나

Portrait Landscape

, 이미지 뒤에 텍스트가 나타납니다

My name is problem, BIG problem

대부분의 사람들이 알고 있듯이 이상한 문자열은 iPhone에서 이모티콘의 유니 코드를 나타냅니다. 전에이 문제가 발생한 사람이 있습니까?

편집 : android:imeOptions="actionDone|flagNoExtractUi"으로 테스트했는데 작동하지 않습니다. 내 추천 단어가 내 EditText를 덮어 씁니다.

+0

나는이 보지 않았다,하지만 난 무슨 일이 일어나고 있는지에 대한 좋은 생각을 가지고 키보드와 충분한 작업을 완료했습니다. ExtractView가 표시 될 때처럼 보입니다. 추출보기는 키보드 위의 가로 편집의 일부이며, Android 프레임 워크에서 실제로 그려지며 키보드의 POV에서 앱의 일부입니다. 이미지 범위를 잃어 버리는 것입니다. 일반 텍스트가 거기에 배치됩니다. 왜, 어떻게 고쳐야할까요? 지금은 좋은 아이디어가 없습니다. 다른 앱에서도 그런 일이 일어나고 있습니까? 메시징 앱을 사용한다고합시다. 초상화에서 편집하는 것에 대해 고함을 씁니까? –

+0

정보를 제공해 주셔서 감사합니다. 잘 알려진 메시징 앱인 Whatsapp을 테스트했습니다. 그리고 이모티콘에 빈 공간이 표시됩니다. 이러한 문자는 유니 코드를 나타내므로 코드에 첨부 된 적절한 기호를 찾을 수없는 경우 빈 공간이됩니다. iPhone SMS에서 이모티콘을 Android 기기로 보내는 것과 마찬가지로 빈 공간이 표시됩니다. –

+1

@GabeSechan 죄송스럽지 않은 질문에 답변했습니다. 세로 모드에서 수정하면 문제가 없습니다. 이 문제는 Landscape 편집에서만 발생하며 Whatsapp에서도 마찬가지입니다. –

답변

0

편집 키보드를 표시하기 전에 spannable 문자열의 HTML 코드를 순수한 UNICODE 문자열로 변환하는 것이 좋습니다. UNICODE의 이모티콘이 지원되면 수정시 표시되어야합니다. 편집을 마친 후 다시 HTML로 변환하십시오.

android html decoding

+0

안드로이드가 지금 이모티콘의 유니 코드를 지원하는지 여부는 확실치 않습니다.이 질문을하는 동안 이모티콘 유니 코드는 iPhone에서만 "합법적"입니다. 아이폰에서 안드로이드로 SMS를 보내면 이모티콘으로 안드로이드가 보이지 않는다고 해봅시다. –

관련 문제