как открыть диалог из потока - PullRequest
0 голосов
/ 21 апреля 2020

Как я могу открыть AlertDialog из потока? У меня есть эта проблема (я думаю), потому что я вызываю метод stati c. Пожалуйста, помогите мне.
Это моя тема:

    public static void startGame(final Context c) {
    myTask = new Thread() {
        @Override
        public void run() {
            try {
                sleep(4000);
            } catch (Exception e) {
                Log.d("ERROR", "" + e.getMessage());
            }
            showDialog_assegnaPunto_multigiocatore(c);
        }
    };
    myTask.start();
}

, и это моя функция

 public static void showDialog_assegnaPunto_multigiocatore(final Context c) {
    AlertDialog.Builder builder = new AlertDialog.Builder(c);
    FrameLayout frameView = new FrameLayout(c);
    builder.setView(frameView);
    final AlertDialog alertDialog = builder.create();
    LayoutInflater inflater = alertDialog.getLayoutInflater();
    alertDialog.getWindow().getAttributes().windowAnimations = R.style.DialogAnimation;
    alertDialog.getWindow().setBackgroundDrawable(new ColorDrawable(Color.TRANSPARENT));
    alertDialog.setCancelable(false);
    final View dialoglayout = inflater.inflate(R.layout.dialog_assegnazione_punti_multiplayer, frameView);

    alertDialog.show();
}
...