Я делаю что-то не так?
Да, вы создаете Укладчика
в вашем новом потоке. Это заставляет его отправленный Runnables
быть выполненным там, который приводит к выполнению loginDialog1.show ();
в новом потоке, но я предполагаю, что это должно быть выполнено в UI-нити.
Как я могу зафиксировать его?
Создайте своего укладчика в вашей UI-нити (например, как переменная экземпляра вашего объекта, содержащего myThrad.start()
) и почта()
ваше работоспособное тому укладчику вместо недавно созданного.
Править:
Я думаю в вашем случае, заключительная локальная переменная была бы прекрасна:
final Handler myHandler = new Handler();
Runnable myRunnable = new Runnable() {
[...]
loginCheck = false;
myHandler.post(new Runnable() {
@Override
[...]