7

Mam mediaplayer w mojej aplikacji z apletem wyszukiwania i dwoma widokami tekstu na obu końcach seekbar, który działa jako timer i będę odtwarzać pliki .wav w tym odtwarzaczu. Mam również editext w tej samej czynności, którą muszę edytować, gdy gra jest w toku. Mój problem polega na tym, że gdy gra jest w toku i jeśli próbuję pobudzać edittext, to wyświetlana jest klawiatura programowa, a interfejs użytkownika blokuje się, oznacza to, że aktualizacja paska uptoek i blokowanie timera zostaje zablokowane. Aktualizuję go za pomocą timertask przy użyciu programu obsługi. Czy ktoś może pomóc, aby dowiedzieć się, co to jest problem. Dlaczego interfejs jest zablokowany po wyświetleniu softkeyboard?UI utknięcie podczas wyświetlania softkeyboard podczas odtwarzania mediaplayer?

Próbowałem na wiele innych sposobów, aby zaktualizować odgadywanie mediaplayer, będzie to problem z użyciem timertask.

  • Odtwarzanie mediaplyer za pomocą usługi i aktualizowanie go do interfejsu użytkownika za pomocą procedury obsługi.
  • Używanie tylko wątku i programu obsługi przez wysyłanie postępu jako wiadomości.
  • Używanie Assynctask i aktualizowanie go w runOnUIthread.

We wszystkich tych przypadkach, gdy pokazywana jest klawiatura programowa, wszystkie inne wyskoki tekstu i paska wyszukiwania blokują się. Pomóż mi wydostać się z tego problemu. Całkowicie utknąłem :-(Czy jest jakiś inny sposób na rozwiązanie tego problemu?

+0

Czy mógłbyś udostępnić zrzut ekranu? – user755

+0

Po prostu zdjęcie w ciemności, ale w twoim manifeście androidowym, jaki jest twój "android: windowSoftInputMode" ustawiony na tę aktywność? – Brandon

+0

to domyślna tablica klawiszy (która jest dostarczana z Androi d) którego używasz lub czy jest to zamówienie niestandardowe? – Toorop

Odpowiedz

3

Interfejs użytkownika aplikacji Mediaplayer blokuje się, ponieważ próbowałem zaktualizować interfejs użytkownika przy użyciu aktualnej pozycji mediaplayera, więc kiedy pojawi się Softkeyboard, a interfejs przejdzie w tryb mediaplayer W tym samym czasie, ponieważ instancja mediplayera jest ciężka, UI blokował się, więc próbowałem innej aplikacji, aby zaktualizować interfejs użytkownika przy użyciu wartości procentowej podczas gry, tak, że nie ma potrzeby uzyskiwania dostępu do bieżącego położenia mediaplayer. Ten problem został rozwiązany po zaimplementowaniu tej logiki

Powiązane problemy