У меня есть группа активности, которая имеет 4 действия на вкладке. Вернувшись от любого действия, предыдущая деятельность перезапускается. Мое требование, когда я называю новое занятие, его следует начать свежим. И когда я нажимаю кнопку «Назад», предыдущая деятельность должна быть восстановлена (без перезапуска). < /p>
Мне не хватает настройки соответствующих флагов намерения. Мой код идет так. < /P>
public void startChildActivity(String Id, Intent intent) {
Window window;
Log.e("startChildActivity","startChildActivity");
window = getLocalActivityManager().startActivity(Id,intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP));
if (window != null)
{
mIdList.add(Id);
setContentView(window.getDecorView());
}
}
public void finishFromChild(Activity child)
{
restartFlag=true;
Log.e("finishFromChild","finishFromChild");
LocalActivityManager manager = getLocalActivityManager();
int index = mIdList.size()-1;
if (index < 1) {
finish();
return;
}
manager.destroyActivity(mIdList.get(index), true);
mIdList.remove(index);
index--;
String lastId = mIdList.get(index);
Intent lastIntent = manager.getActivity(lastId).getIntent();
Window newWindow = manager.startActivity(lastId, lastIntent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP));
setContentView(newWindow.getDecorView());
}
Подробнее здесь: https://stackoverflow.com/questions/633 ... restarting
В группе активности, как восстановить предыдущее занятие (без перезапуска) ⇐ Android
Форум для тех, кто программирует под Android
1739629440
Anonymous
У меня есть группа активности, которая имеет 4 действия на вкладке. Вернувшись от любого действия, предыдущая деятельность перезапускается. Мое требование, когда я называю новое занятие, его следует начать свежим. И когда я нажимаю кнопку «Назад», предыдущая деятельность должна быть восстановлена (без перезапуска). < /p>
Мне не хватает настройки соответствующих флагов намерения. Мой код идет так. < /P>
public void startChildActivity(String Id, Intent intent) {
Window window;
Log.e("startChildActivity","startChildActivity");
window = getLocalActivityManager().startActivity(Id,intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP));
if (window != null)
{
mIdList.add(Id);
setContentView(window.getDecorView());
}
}
public void finishFromChild(Activity child)
{
restartFlag=true;
Log.e("finishFromChild","finishFromChild");
LocalActivityManager manager = getLocalActivityManager();
int index = mIdList.size()-1;
if (index < 1) {
finish();
return;
}
manager.destroyActivity(mIdList.get(index), true);
mIdList.remove(index);
index--;
String lastId = mIdList.get(index);
Intent lastIntent = manager.getActivity(lastId).getIntent();
Window newWindow = manager.startActivity(lastId, lastIntent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP));
setContentView(newWindow.getDecorView());
}
Подробнее здесь: [url]https://stackoverflow.com/questions/6330029/in-activitygroup-how-to-restore-the-previous-activity-without-restarting[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия