Создаю диалог со своей разметкой:
@Override
protected Dialog onCreateDialog(final int id) {
AlertDialog.Builder adb = new AlertDialog.Builder(this);
LayoutInflater inflater = getLayoutInflater();
View layout = inflater.inflate(R.layout.set_asp_dlg,null);
TextView tvTitle = (TextView) layout.findViewById(R.id.tvTitle);
tvTitle.setText(getString(R.string.aAspect) + " " + l_asp.get(CurItem));
adb.setView(layout);
Button btDlgInpNameOk = (Button) layout.findViewById(R.id.btDlgOk);
Button btDlgInpNameCancel = (Button) layout.findViewById(R.id.btDlgCancel);
final Dialog dialog = adb.create();
btDlgInpNameOk.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
dismissDialog(id);
}
});
btDlgInpNameCancel.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
dismissDialog(id);
}
});
return dialog;
}
Вызываю Диалог:
showDialog(1);
При вызове диалога повторно, появляется этот же диалог, но в разметке должны быть изменения зависящие от переменной CurItem (название у tvTitle меняется).
Может я неправильно удаляю диалог? Как добиться чтобы диалог каждый раз создавался в зависимости от условий?
Не надо удалять диалог, надо просто ловить/перегружать метод onPrepareDialog()
Дело в том, что onCreateDialog()
вызывается при первом создании диалога и пока он не будет выгружен из памяти осью он не будет больше вызываться, чтобы изменить значения диалога перед показом, надо эти изменения делать в методе onPrepareDialog()
Метод правда устаревший, равно как и onCreateDialog()
- теперь православным признается только DialogFragment
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Добрый деньСоздал веб-проект с применением технологий (Tomcat, JDBC, JSP, Servlets, Maven etc)
I can't scale and move components in IntelliJ with its GridLayoutThe problem is when I move/scale components they don't move to the exact place
Хочу добавить одну лишную строчкуЕсли в TextView указать maxLines = 4