Форум программистов, компьютерный форум, киберфорум
Программирование Android
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/6: Рейтинг темы: голосов - 6, средняя оценка - 4.67
0 / 0 / 0
Регистрация: 22.10.2012
Сообщений: 33

Диалоги, нужно уничтожать ?

31.10.2012, 20:29. Показов 1326. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Намудрил с диалогами нужна помощь:
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
@Override
    protected Dialog onCreateDialog(int id) 
    {
        switch (id) 
        {   
            case 0:
                AlertDialog.Builder builder_0 = new AlertDialog.Builder(this);
                final String[] mSelectList_0 = { "11", 
                        "22", "33", "44"};
                builder_0 = new AlertDialog.Builder(this);
                builder_0.setTitle("Выберите:")
                .setCancelable(false)
                
                // добавляем одну кнопку для закрытия диалога
                .setNeutralButton("Назад",new DialogInterface.OnClickListener() 
                    {
                        public void onClick(DialogInterface dialog, int id) 
                        {
                            dialog.cancel();
                        }
                    })
 
                    .setSingleChoiceItems(mSelectList_0, Resolution , new  DialogInterface.OnClickListener() 
                    {
                        public void onClick(DialogInterface dialog,int item) 
                        {
                            Resolution = Integer.valueOf(item).intValue();
                        }
                    });
            
            return builder_0.create();
 
        case 1:
            AlertDialog.Builder builder_1 = new AlertDialog.Builder(this);
            final String[] mSelectList_1 = { "ппп", "ррр", "аааа", "ееее","ннннн","иииии"};
            builder_1 = new AlertDialog.Builder(this);
            builder_1.setTitle("Выберите:")
            .setCancelable(false)
            .setNeutralButton("Назад",new DialogInterface.OnClickListener() 
            {
                public void onClick(DialogInterface dialog, int id) 
                {
                    dialog.cancel();
                }
            })
 
            .setSingleChoiceItems(mSelectList_1, DrivingModeAccelerator ,new DialogInterface.OnClickListener() 
            {
                public void onClick(DialogInterface dialog,int item)
                {
                    DrivingModeAccelerator = Integer.valueOf(item).intValue();                  
                }
            });
                    
            return builder_1.create();
 
        case 2:
            AlertDialog.Builder builder_2 = new AlertDialog.Builder(this);
            final String[] mSelectList_2 = { "Один", "Два" };
            builder_2 = new AlertDialog.Builder(this);
            builder_2.setTitle("Выберите")
            .setCancelable(false)
            .setNeutralButton("Назад",new DialogInterface.OnClickListener() 
            {
                public void onClick(DialogInterface dialog, int id) 
                {
                    dialog.cancel();
                }
            })
 
            .setSingleChoiceItems(mSelectList_2, AutoParking ,new DialogInterface.OnClickListener() 
            {
                public void onClick(DialogInterface dialog,int item)
                {
                    AutoParking = Integer.valueOf(item).intValue();
                    
                }
            });
                    
            return builder_2.create();
}
        return null;
        
    }
Через переменные
Resolution
DrivingModeAccelerator
AutoParking
Передаю значение в каком положении при открытии диалога должен стоять radiobutton.
При первом запуске, при создании диалога значения читаются и radiobutton встает в нужное положение
При последующих открытиях диалога и смене значений переменных, позиция radiobutton не меняется.
Я так понимаю, что диалоговое окно не уничтожается, а открывает уже ранее созданную версию)

Как сделать, что при обращении диалог читал данные из переменных, ну либо наверное заново создать?
И верен ли приведенный код?
Спасибо.

Добавлено через 5 часов 11 минут
Java
1
2
3
protected void onPrepareDialog(int id, Dialog dialog) {
      super.onPrepareDialog(id, dialog);
    }
Верно?

Добавлено через 16 минут
Это что получается, что onPrepareDialog фактически дубляж onCreateDialog?
Только onPrepareDialog обновляет данные, а onCreateDialog создает диалог.

В то время как метод onCreateDialog () может быть вызван лишь единожды для инициализации диалогового окна при его создании, метод onPrepareDialog () вызы*вается каждый раз при вызове метода showDialoq(), предоставляя деятельности воз*можность выполнить повторную инициализацию диалогового окна всякий раз, когда это окно показывается пользователю.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
31.10.2012, 20:29
Ответы с готовыми решениями:

Нужно ли уничтожать экземпляр класса Vector?
Здравствуйте. В своей программе в функции использую класс vector (и даже vector <vector < >> =) ). Программа работает через...

Нужно ли уничтожать объекты после их использования?
Всегда считал, что после выполнения php скрипта, все его объекты (переменные, массивы и т.д.) уничтожаются и память освобождается. ...

Нужно ли явно уничтожать ADODataSet, ADOCommand и т.д.?
Добрый день! Я вот мучаюсь вопросом, нужно ли явно закрывать компоненты ADODataSet, ADOCommand и т.д. и освобождать память (например, в...

2
1162 / 986 / 1
Регистрация: 28.06.2012
Сообщений: 3,462
31.10.2012, 20:52
просто обновляй нужные данные в onPrepareDialog.
0
0 / 0 / 0
Регистрация: 22.10.2012
Сообщений: 33
01.11.2012, 15:18  [ТС]
Java
1
2
3
4
5
6
7
8
9
protected void onPrepareDialog(int id, Dialog dialog) {
      super.onPrepareDialog(id, dialog);
    }
switch (id) 
        {   
            case 0:
//Здесь нужно, чтобы при открытии диалога обновились данные позиция RadioButton
//для каждого диалога позиция задается своей переменной
//для диалога 0, переменная Resolution
Тут, что просто нужно вызвать эту переменную?

Добавлено через 18 часов 15 минут
Помог мне removeDialog(id)
Может не "красиво" но работает.
С onPrepareDialog не разобрался.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
01.11.2012, 15:18
Помогаю со студенческими работами здесь

DataReport. Нужно ли уничтожать его после использования?
Может ламерски прозвучит, но надо ли после использования репорта его уничтожать явно?? то есть прописывать где нибудь Set...

Нужно ли уничтожать список Tstringlist отдельно с помощью StrList.Free?
Всем привет. Есть следующие вопросы. 1) если в программе создавfлся список Tstringlist, то при закрытии программы создавающей этот...

Зачем уничтожать iPhone
Голливудская киностудия вместе с компанией Mail.ru Group создали фильм, который скоро выйдет на экраны. Результатом их совместного труда,...

Как правильно уничтожать Tframe
Доброго всем времени суток. Прошу помочь. В проекте при нажатии на кнопку динамически создаётся новая страница на TPageControl. И на...

Зачем Дьяволу уничтожать наш мир?
Добрый день, коллеги, товарищи, братья по оружию, ну и остальные праздно шатающиеся в поиске возможности пооффтопить вволю! Вот давно...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
Киев стоит - украинская песня
zorxor 28.01.2026
wfWdiRqdTxc О Господи, Вечный, Ты . . . Я помоги, Бесконечный. . . Я прошу Ты. . . Я погибаю, спаси. . . Я прошу Тебя Вечный. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL3_image
8Observer8 27.01.2026
Содержание блога SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip" Извлеките архив и вы увидите. . .
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д. Сборка примера Скачайте. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru