Android 如何在“选项卡”下的“组活动”下为“活动结果”启动触觉?

Android 如何在“选项卡”下的“组活动”下为“活动结果”启动触觉?,android,android-activity,android-tabactivity,Android,Android Activity,Android Tabactivity,我正在开发一个应用程序,其中我正在使用Tab Activity下的多个活动。我正在使用 我想从下一个活动中获取结果。我该怎么做呢。我找不到它。我读过两三个例子,比如和。但我不知道如何才能得到结果。我也试过了 View view = getLocalActivityManager().startActivityForResult("Search", new Intent(this, WhatMenu.class). addFlags(Intent.FLAG_ACTIVITY_CLEAR_

我正在开发一个应用程序,其中我正在使用Tab Activity下的多个活动。我正在使用

我想从下一个
活动
中获取结果。我该怎么做呢。我找不到它。我读过两三个例子,比如和。但我不知道如何才能得到结果。我也试过了

    View view = getLocalActivityManager().startActivityForResult("Search", 
new Intent(this, WhatMenu.class).
addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP)).getDecorView();    
But it only Supports `startActivity()`
。任何帮助都是值得的。

提前感谢

对于使用
startActivityForResult()
,您还需要传递请求代码。如果您不知道它是什么,只需通过0。

和的语法不同。

使用
startActivityForResult()
还需要传递请求代码。如果您不知道它是什么,只需通过0。
和的语法不同。

活动1
创建一个类变量以供参考

private final int REQUEST_CODE = 0;

...
//Somewhere in your code you have to call startActivityForResult
Intent intent = new Intent(Activity1.this, Activity2.class);
startActivityForResult(intent);

活动2

在结束Activity2之前,您必须将结果设置为“确定”,并将要带回Activity1的数据放在类似“确定”的位置

Intent data = new Intent();
data.putExtra("name", "Mark");
data.putExtra("number", 1);
data.putExtra("areYouHappy", true);

setResult(RESULT_OK, data);
finish(); //closes Activity2 and goes back to Activity1

现在回到Activity1,您应该重写onActivityResult方法并从Activity2检索值
首先检查Activity2的结果是否正常,然后检查您传递的引用请求代码。因为之前我们创建了私有final int
REQUEST_code=0
,然后我们检查requestCode是否等于变量REQUEST_code。如果是,则从活动2中提取数据。

活动1
创建一个类变量以供参考

private final int REQUEST_CODE = 0;

...
//Somewhere in your code you have to call startActivityForResult
Intent intent = new Intent(Activity1.this, Activity2.class);
startActivityForResult(intent);

活动2

在结束Activity2之前,您必须将结果设置为“确定”,并将要带回Activity1的数据放在类似“确定”的位置

Intent data = new Intent();
data.putExtra("name", "Mark");
data.putExtra("number", 1);
data.putExtra("areYouHappy", true);

setResult(RESULT_OK, data);
finish(); //closes Activity2 and goes back to Activity1

现在回到Activity1,您应该重写onActivityResult方法并从Activity2检索值
首先检查Activity2的结果是否正常,然后检查您传递的引用请求代码。因为之前我们创建了私有final int
REQUEST_code=0
,然后我们检查requestCode是否等于变量REQUEST_code。如果是,则从活动2中提取数据。



我已经通过
ViewFlipper
解决了这个问题,谢谢大家的帮助。

我已经通过
ViewFlipper解决了这个问题,谢谢大家的帮助。

任何建议都会得到赞赏的,不要使用
活动组,你能给我一个简单的例子吗?我该如何使用碎片。你肯定有这个例子-任何建议都会很受欢迎不要使用
ActivityGroup
它已被弃用,你能给我一个简单的例子吗?我可以用这个例子吗?先生,我已经试过了,但是没有方法getLocalActivityManager()。startActivityForResult(I,29);如果我在小组活动中尝试,它会隐藏我不想要的选项卡。。LocalActivityManager中没有结果的方法。主席先生,我只想从下一个活动到上一个活动取得一些数据,并通知名单;要将下一个活动中的数据传递到上一个活动中,您可以使用SharedReferences或使用静态变量传递值,但不建议使用后者。但是当我可以通知时,因为on resume()也不起作用。先生,我尝试过,但没有方法getLocalActivityManager()。startActivityForResult(I,29);如果我在小组活动中尝试,它会隐藏我不想要的选项卡。。LocalActivityManager中没有结果的方法。主席先生,我只想从下一个活动到上一个活动取得一些数据,并通知名单;要将下一个活动中的数据传递到上一个活动中,您可以使用SharedReferences或使用静态变量传递值,但不建议使用后者。但当我可以通知时,因为on resume()也不起作用。Java没有全局变量,而使用private和final会使其更难访问,而不是全局。你的意思是说类变量还是静态变量?Java没有全局变量,使用private和final使它更难访问,而不是全局变量。你的意思是说类变量还是静态变量?