У меня есть дочернее действие, которое обновляет базу данных, что показано в таблице ниже в родительском действии.Когда родительское действие (Обновление) выполнено, коммит отправляется в базу данных, и данные будут обновлены.После этого я хотел бы закрыть «Обновление» и вернуться к отображению родительской активности.Это работает, но данные не обновляются.Я прочитал в Интернете, что существует простой способ воссоздания действия ..
public void relaxate ()
Заставьте эту активность воссоздать новый экземпляр.Это приводит, по сути, к тому же потоку, что и при создании действия из-за изменения конфигурации - текущий экземпляр проходит свой жизненный цикл до onDestroy (), а затем создается новый экземпляр.
Поэтому я вызываю UpdateActivity из DisplayActivity с помощью:
Intent intent = new Intent(app, UpdateActivity.class);
startActivity(intent);
И внутри обновления есть кнопка, которая выполняет:
getParent().recreate();
finish();
Однако getParent () возвращает ноль, и я получаюошибка.Почему это так?
У меня есть следующее в моем AndroidManifest.xml (Ofc. Больше, но не все в списке)
<activity
android:name=".SearchActivity"
android:parentActivityName=".MainActivity"
android:screenOrientation="portrait">
</activity>
<activity
android:name=".DisplaySearchResultActivity"
android:screenOrientation="landscape"
android:parentActivityName=".SearchActivity">
</activity>
<activity
android:name=".UpdateActivity"
android:parentActivityName=".DisplaySearchResultActivity"
android:screenOrientation="portrait">
</activity>
Спасибо.