![](/img/trans.png)
[英]onActivityResult() is not called after I run finish in the child activity
[英]Child Activity of ActivityGroup is not finished after finish() is called
我有一个使用ActivityGroup的程序。 类结构如下:
Class A extends ActivityGroup {
onCreate(){
}
}
Class B extends A {
onCreate() {
startActivityResult();//launch C
}
onActivityResult(){
...
finish();//finish activity after receive result from C;this line of code does execute in test
...
}
}
Class C extends A {
onCreate(){
...
}
}
B是整个程序的入口。 在B的onCreate()
,我使用startActivityResult()
启动C; 在C中,它将向用户显示一个按钮; 用户单击按钮后,C将调用finish()
和setResult();
然后在B的onActivityResult()
,尝试使用finish()
方法退出所有应用程序。
问题是按下按钮后屏幕变成黑色。 然后我也使用hierarchyviewer.bat
也可以看到视图; 令我惊讶的是,有一个ID为R.id.content
的视图和另一个没有ID的根视图。 工具显示活动B在顶部。 我知道id为R.id.content
的视图是Activity
的根视图,但是我不知道为什么在调用finish()
之后它仍然存在。 您知道, finish()
之后没有其他逻辑,那里没有其他接收者,或者任何其他接收者都可以阻塞完成。
也许是因为我对ActivityGroup
使用不正确。 有人可以帮忙吗?
感谢您对我关于stackoverflow的第一个问题的回答。
我知道根本原因,这是因为我使用了B的singleTask活动,但其他一些活动却作为新任务启动,但仍未完成。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.