Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

Программирование Android

Войти
Регистрация
Восстановить пароль
 
disx
22 / 22 / 0
Регистрация: 26.02.2014
Сообщений: 552
Записей в блоге: 1
#1

Обновление карты из DialogFragment, без обновления активити? - Программирование Android

12.01.2016, 16:01. Просмотров 265. Ответов 5
Метки нет (Все метки)

Подскажите пожалуйста, есть MapsActivity в нем вызывается Dialog в нем вставляю координаты нажимаю ок, передаю координаты в переменные MapsActivity

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

Спасибо!
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.01.2016, 16:01
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Обновление карты из DialogFragment, без обновления активити? (Программирование Android):

Отправка данных из dialogfragment в активити в котором был создан диалог - Программирование Android
Здравствуйте. Нужна помощь. Как сделать так что при нажатии кнопки btnmodal в диалоге, в активити, которая вызвала диалог менялась текствью...

Обновление списка при выходе из DialogFragment - Программирование Android
Есть ViewPager на каждой его странице список, долгий клик на item списка вызывает DialogFragment для редактирования названия item'а, по...

Обновление адаптера на неактивной активити - Программирование Android
Есть две активити одна выводит на листвью данные, другая заполняет. При вызове метода заполнения с активити для отображения данных...

Запуск BroadcastReceiver без активити - Программирование Android
Имеется приложение, включающее в себя единственный класс: public class MyReceiver extends BroadcastReceiver{ @Override ...

Вернуться в то же активити (без открытия нового) - Программирование Android
Здравствуйте! Такой вопрос. Есть сервис, отсылающий уведомление. По нажатию на уведомление нужно попасть на определенное активити....

Как запустить активити без прописывания в манифесте? - Программирование Android
неужели нельзя создавать активити динамически?

5
disx
22 / 22 / 0
Регистрация: 26.02.2014
Сообщений: 552
Записей в блоге: 1
14.01.2016, 10:54  [ТС] #2
если после выхода из Dialog выключить экран (ну находясь в MapsActivity), а потом включить то карта обновляется с координатами которые переданы из диалога, т.е. срабатывает onResume() в котором пересоздается карта,

но почему он не хочет срабатывать именно при выходе из Диалога может есть у кого мысли?

Добавлено через 14 часов 34 минуты
Продвинулся маленько, оказывается из диалога нельзя управлять onPause() активити...

тут написано почему:
Кликните здесь для просмотра всего текста
onPause() is called when your activity is no longer at the top of the activity stack. A Dialog by itself is not an Activity, so will not replace the current Activity at the top of the stack, so will not cause anything to pause.

A dialog (lower-case) does not need to be implemented by a Dialog class, however. For example it is not uncommon to implement one with an Activity whose theme is set to that of a dialog. In this case displaying the dialog-as-an-Activity will cause the new Activity to be on the top of the stack, pausing what previously was there.


поэтому решил заменить Диалог на Активити, и при ее вызове обнулять объект карты map=null; и все работает, но для полного счасться может кто подскажет как придать активити стиль диалога, пробовал так:

Java
1
2
3
4
<activity android:name=".About"
    android:label="@string/about_title"
    android:theme="@android:style/Theme.Dialog">
</activity>
но вылетает ошибка мол style должен быть like AppTheme, может кто вкурсе что подставить в стили чтоб активитя внешне была как диалог?
0
Spelcrawler
526 / 496 / 111
Регистрация: 12.03.2014
Сообщений: 1,649
Завершенные тесты: 1
14.01.2016, 11:15 #3
disx, можно же в OnDismiss диалога обновить карту.
0
disx
22 / 22 / 0
Регистрация: 26.02.2014
Сообщений: 552
Записей в блоге: 1
14.01.2016, 13:36  [ТС] #4
Spelcrawler,

файл диалога:
Java
1
public class DialogSMS extends DialogFragment implements DialogInterface.OnDismissListener {
в нем же переопределяю onDismiss так:
Java
1
2
3
4
5
6
7
8
 @Override
    public void onDismiss(DialogInterface dialogInterface) {
        super.onDismiss(getDialog());
        Toast.makeText(getActivity(), "onDismiss", Toast.LENGTH_SHORT).show();
        Longtitude = Double.parseDouble(Lo);
        Latitude = Double.parseDouble(La);
 
    }
но как обновить карту не понимаю все равно?
0
Spelcrawler
526 / 496 / 111
Регистрация: 12.03.2014
Сообщений: 1,649
Завершенные тесты: 1
14.01.2016, 13:39 #5
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
Цитата Сообщение от disx Посмотреть сообщение
в нем же переопределяю onDismiss так:
А если определить его в активити и назначить на диалог - как-то так (примерно, точный код не помню)
Java
1
dialog.setOnDismissListener(this);
А сохранение данных лучше бы делать по нажатию на кнопку "ОК".
1
disx
22 / 22 / 0
Регистрация: 26.02.2014
Сообщений: 552
Записей в блоге: 1
14.01.2016, 15:15  [ТС] #6
определил в Активити, но но не дает выбрать/повесить такой метод setOnDismissListener(this);

диалог получаю так

DlgSMS = new DialogSMS();

показываю так:

DlgSMS.show(getSupportFragmentManager(), "DlgSMS");

Добавлено через 28 минут
Spelcrawler, понял он вешается на диалог, а не на DialogFragment/

Добавлено через 24 минуты
все вернул вариант с активити, который заработал со стилем диалога:

Java
1
2
3
4
<activity android:name=".About"
    android:label="@string/about_title"
    android:theme="@android:style/Theme.Dialog">
</activity>
просто унаследовал Диалог-Активити от Activity а не от AppCompat как было по умолчанию, и вполне красиво получилось... Spelcrawler, отдельное
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
14.01.2016, 15:15
Привет! Вот еще темы с ответами:

Как сделать приложение без единого активити - Программирование Android
&lt;application android:allowBackup=&quot;true&quot; android:icon=&quot;@mipmap/ic_launcher&quot; android:label=&quot;@string/app_name&quot; ...

На телефоне highscreen 3 на всех активити происходит быстрый самовозврат к главной активити - Программирование Android
Сделал меню в виде ListView. При клике на меню запускаются активити. На эмуляторе работает, на телефоне моем LG все работает. На телефоне...

Как вызвать метод в активити классе из обычного не активити класса? - Программирование Android
Есть активити в котором вводятся логин и пароль. При нажатии кнопки &quot;войти&quot; в отдельном классе &quot;сокетсервер&quot;(+в отдельном потоке)...

Отображение активити поверх другого активити - Программирование Android
Ребят подскажите пожалуйста как такое сделать. Есть активити с картой, по нажатию кнопки настройки, нужно открыть активити с настройками,...


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

Или воспользуйтесь поиском по форуму:
6
Yandex
Объявления
14.01.2016, 15:15
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru