скопировать существующий linearLayout во время выполнения alertDialog - PullRequest
0 голосов
/ 16 октября 2019

У меня есть приложение для технического обслуживания, где оператор выполняет контрольный список, а предыдущие шаги отключены, но мне нужно иметь возможность вернуться к предыдущему шагу, и я хотел бы сделать это в alertDialog

Я создал setOnLongClickListener, и я получаю View и пытаюсь добавить в alertDialog, но я получаю исключение, что у макета есть parent (), когда я удаляю View with, removeView (), он работает, ноЯ не могу удалить вид основного действия

passo1.setOnLongClickListener(v -> {
        dialogBuilder = new AlertDialog.Builder(initManutencao.this);
        if (v.getParent() != null){
            ((ViewGroup) v.getParent()).removeView(v);
        }
        dialogBuilder.setView(v);
        alertDialog = dialogBuilder.create();
        alertDialog.getWindow().getAttributes().windowAnimations = R.style.DialogAnimation;
        alertDialog.getWindow().setBackgroundDrawable(new ColorDrawable(Color.TRANSPARENT));
        alertDialog.show();
        //disableItens.ShowItensScren(0, initManutencao.this);
        return false;
    });

Короче говоря, мне нужно скопировать LinearLayout со всем его содержимым в alertDialog, не удаляя его из основного действия при нажатии.

Основная активность, не должна быть изменена требуется, но без удаления LinearLayout из основной операции

...