作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
Activity A
调用Activity B
Activity C
Activity B
调用 finish,(从堆栈历史中清除 Activity B
)Activity B
onBackPressed()
中,我通过 setResult()
从 Activity B
传递数据到Activity A
,但在Activity A
中,数据为null
,resultCode 0
。如何在ActivityA
中获取ActivityB
的数据?
最佳答案
打开C时不要从B调用finish()
,而是用startActivityforResult()
调用C,然后在时通过B传回数据B 中的 onActivityResult()
被触发。像这样的东西:
ActivityB {
onCreate(Bundle) {
startActivityForResult(ActivityC, 0);
}
onActivityResult(int, int, Intent){
setResult(resultCode, data);
finish();
}
}
编辑:
显然在调用 B 时添加标志 Intent.FLAG_ACTIVITY_FORWARD_RESULT
实际上也应该达到您想要的结果。
每天学点新东西...
关于android - 从 Activity A->B->C 导航 - 如何在 onBackPressed() 中将数据从 C 传递到 A?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38311025/
我是一名优秀的程序员,十分优秀!