Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/205.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 将结果从子活动传递到父选项卡活动_Android_Android Sdk 2.1 - Fatal编程技术网

Android 将结果从子活动传递到父选项卡活动

Android 将结果从子活动传递到父选项卡活动,android,android-sdk-2.1,Android,Android Sdk 2.1,我的应用程序中有6个活动,分别是Activity1、Activity2、TabActivity、childTab1、childtab2和ExtraActivity 应用程序流: Activity1 => Activity2 => TabActivity =>ChildTab1 or ChildTab2 => ExtraActivity 现在我想将一些数据从ExtraActivity传递到Activity1。我正在使用StartActivityForResult启动所有活

我的应用程序中有6个活动,分别是Activity1、Activity2、TabActivity、childTab1、childtab2和ExtraActivity

应用程序流:

Activity1 => Activity2 => TabActivity =>ChildTab1 or ChildTab2 => ExtraActivity
现在我想将一些数据从ExtraActivity传递到Activity1。我正在使用StartActivityForResult启动所有活动

ExtraActivity可以将数据发送到ChildTab1或ChildTab2,但我无法将该数据发送回TabActivity,再发送回Activity2,最后发送到Activity1

请帮忙

更新:在搜索时,我通过以下帖子获得了我的解决方案:


我认为您可以使用TabActivitygetParent.onActivityResult将onActivityResult方法结果从ChildTabX委托给TabActivity。在这里,您只需调用setResult并再次完成即可将结果发送到Activity2。与Activity2相同,您可以使用应用程序上下文在Activite之间传递数据

使用应用程序上下文的方法

扩展应用程序类并根据需要添加属性。因此,在您的活动中,您可以访问应用程序上下文并获取数据。由于应用程序上下文是一个单例,所以它在每个活动中都是相同的实例

MyApplication appContext = (MyApplication) getApplicationContext();
appContext.myString = "YOUR DATA;
在任何其他活动中,您都可以以相同的方式访问该位图

MyApplication appContext = (MyApplication) getApplicationContext();
现在字符串位于appContext对象中

您还需要添加

android:name=".MyApplication"

到清单文件中的应用程序标记。

我仅使用意图。。这太明显了,所以我没提。问题是在tabactivity中添加选项卡时无法定义startactivityForResult。。这可能就是setResult中设置的意图丢失的原因。请使用start activity和use putString。