#android #android-alertdialog
#Android #android-alertdialog
Вопрос:
У меня есть AlertDialog с setView, и я хочу изменить setView при нажатии кнопки set в кнопке next
public void dd(View view){
LayoutInflater inflater= (LayoutInflater)getBaseContext().getSystemService(LAYOUT_INFLATER_SERVICE);
view = inflater.inflate(R.layout.layout_1,null);
final AlertDialog.Builder builder = new AlertDialog.Builder(view.getContext());
builder.setTitle("HI");
builder.setIcon(android.R.drawable.ic_dialog_alert);
builder.setView(R.layout.layout_1);
Button next = (Button)view.findViewById(R.id.button3);
next.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
builder.setView(R.layout.layout_2);
}
});
AlertDialog dialog = builder.create();
dialog.show();
}
Комментарии:
1. Что это за язык?
2. @naXa: я считаю
plz
, что представляет собой сильно измененную версию английского языка, известную как «txtspk». Это стоит изучить, даже если люди, скорее всего, проголосуют против, полагая, что ввод «пожалуйста» требует значительных усилий:-)
.
Ответ №1:
Вы не можете изменить макет в builder. В конструкторе вы можете установить только начальный макет диалогового окна.
Чтобы создать многоступенчатый диалог оповещения, попробуйте поместить все шаги layout1
и показать / скрыть их при следующем / предыдущем нажатии кнопки. Используется ViewGroup step1 = (ViewGroup) dialog.findViewById(R.id.step1);
для получения представлений внутри диалогового окна.