Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/313.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android getParent()为null,但已设置parentActivityName_Android_Activity Stack - Fatal编程技术网

Android getParent()为null,但已设置parentActivityName

Android getParent()为null,但已设置parentActivityName,android,activity-stack,Android,Activity Stack,我有一个更新数据库的子活动,它显示在父活动的下表中。完成父活动(更新)后,将向数据库发送提交,并更新数据。之后,我想关闭更新并返回到我的父活动显示。这是可行的,但数据不会被刷新。我在网上看到有一种简单的方法可以重新创建一个活动 公共空间() 使此活动使用新的 例如。这将产生与以下情况基本相同的流: 活动是由于配置更改而创建的--当前 实例将经历其生命周期到onDestroy()和一个新的 实例,然后在它之后创建 因此,我使用以下命令从DisplayActivity调用UpdateActivity

我有一个更新数据库的子活动,它显示在父活动的下表中。完成父活动(更新)后,将向数据库发送提交,并更新数据。之后,我想关闭更新并返回到我的父活动显示。这是可行的,但数据不会被刷新。我在网上看到有一种简单的方法可以重新创建一个活动

公共空间()

使此活动使用新的 例如。这将产生与以下情况基本相同的流: 活动是由于配置更改而创建的--当前 实例将经历其生命周期到onDestroy()和一个新的 实例,然后在它之后创建

因此,我使用以下命令从DisplayActivity调用UpdateActivity:

Intent intent = new Intent(app, UpdateActivity.class);
startActivity(intent);
更新中有一个按钮,用于:

getParent().recreate();
finish();
但是,getParent()返回null,我得到一个错误。为什么呢

我的AndroidManifest.xml中有以下内容(Ofc.more,但没有列出所有内容)



谢谢。

您是否考虑过使用
startActivityForResult()
启动您的
UpdateActivity
? 您可以在此处阅读:。在
DisplayActivity
中,您可以实现
onActivityResult()
函数,该函数将
重新创建()
自身。这应该行得通。您不必调用
getParent()

getParent()
文档说明,如果此视图是嵌入式子视图,则返回父活动。您的活动不是嵌入式子视图。它不是活动组的一部分

    <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>