Mam kawałek kodu, który dodaje trochę obraz do EditText wykorzystaniem SpannableString następująco:SpannableString nie są wyświetlane prawidłowo w trybie Krajobrazowego
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);
Istnieją pewne obliczenie indeksu pomiędzy że nie należą, ponieważ są one nieważne. Kod działa poprawnie. Oto niektóre obraz niej:
pionowa i pozioma w trybie non edycji:
Jednak, gdy zacznę edycji w trybie krajobrazu, tekst za obrazie pojawia:
Jak większość ludzi wie, dziwny ciąg reprezentuje Unicode dla emotikonów w telefonie iPhone. Czy ktoś napotkał ten problem wcześniej?
EDYCJA: Przetestowany z android:imeOptions="actionDone|flagNoExtractUi"
, nie działa, sugestia słowo ukryje mój EditText.
Nie widziałem tego, ale zrobiłem wystarczająco dużo pracy z klawiatur, aby mieć dobre przypuszczenie o tym, co się dzieje. Wygląda na to, gdy wyświetla się widok ekstraktu (widok ekstraktu jest częścią edycji poziomej nad klawiaturą, faktycznie rysowany przez system Android i jest częścią aplikacji z POV klawiatury), tracisz swój zasięg obrazu i po prostu umieszczany jest tam zwykły tekst. Dlaczego i jak to naprawić, nie mam w tej chwili dobrych pomysłów. Czy dzieje się to również w innych aplikacjach? Powiedz, że aplikacja do wysyłania wiadomości? Co powiesz na edycję portretu? –
Dziękuję za informacje, testowałem z dobrze znaną aplikacją do przesyłania wiadomości Whatsapp. I wyświetla te puste emotikony. Ma to sens, ponieważ te znaki reprezentują Unicode, które będą pustą przestrzenią, jeśli nie będą w stanie znaleźć właściwego symbolu dołączonego do kodu. Podobnie jak przy wysyłaniu emoji z iPhone'a SMS na urządzenie z Androidem, puste miejsce zostanie wyświetlone. –
@GabeSechan Przepraszamy, ale nie odpowiedziałeś na twoje pytanie, edycja w trybie portretowym działa dobrze. Problem występuje tylko przy edycji krajobrazu, a to samo dotyczy aplikacji WhatsApp. –