获得一个结果要描述的情况,说我有3个活动:A,B,和C 并且在活性的一个按钮,用于启动活动B,并且在活性C使用时的按钮它被点击,就应该从活动c。发送到活动的结果的从一个活动
我的问题是...有没有办法从C结果传递至A?如果有办法,它是什么?
注意:如果你给的方式使用startActivityForResult(...)和onActivityResult(...)
预先感谢您的方法,这将是很好
获得一个结果要描述的情况,说我有3个活动:A,B,和C 并且在活性的一个按钮,用于启动活动B,并且在活性C使用时的按钮它被点击,就应该从活动c。发送到活动的结果的从一个活动
我的问题是...有没有办法从C结果传递至A?如果有办法,它是什么?
注意:如果你给的方式使用startActivityForResult(...)和onActivityResult(...)
预先感谢您的方法,这将是很好
有一个称为FLAG_ACTIVITY_FORWARD_RESULT
的Intent
标志。呼叫:
Intent intent = new Intent(this, ActivityB.class);
startActiivtyForResult(intent);
开始Activity
B时的(通过调用startActivityForResult(intent)
)。 当打开C,致电:
Intent intent = new Intent(this, ActivityB.class);
intent.setFlags(Intent.FLAG_ACTIVITY_FORWARD_RESULT);
startActiivtyForResult(intent);
finish();
这意味着:打开C,接近B.然后,关闭胡亚蓉C使用时,请致电:
setResult(123);
finish();
从C结果将回到A.
你的意思,我应该在的onClick添加此行代码在活动B( ) 方法? – user8447949
对不起,我不明白,你能详细解释一下吗? – user8447949
编辑,这个问题,现在希望这个更清楚。 –
如果你只是使用像String对象这样简单的类型,你可以在B,C活动中使用Bundle和补充变量。并使用onActivity结果将其从C-> B-> A转移。或者你可以使用共享首选项。
这是个好主意。不过,我想从C传递到一个立即 – user8447949
让您导致活性C,然后将结果发送到共享偏好和共享偏好 –
呼叫活动A和蒙古包结果,我想执行代码时的结果获得通过,通过使用一个代码或像onActivityResult()方法。 – user8447949
如果您正在从Activity C
导航到Activity A
,则可以使用Intent
传输数据。否则,我建议使用Interface
,然后在Activity A
中的callback
方法中传递数据作为参数。你说你想得到如onActivityResult
这样的答案,为此,我猜Activity C
应该退出或调用onActivityResult
Activity A
为什么不使用数据库(例如Firebase)来存储结果?并从活动C检索它? –
@CatalinGhita我能做到这一点,但我想马上得到结果时,结果被传递,通过使用代码或类似onActivityResult()的方法 – user8447949