У меня есть программа, использующая 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
тоже посмотреть виды;к моему удивлению, есть представление с идентификатором R.id.content
и другое корневое представление без идентификатора.И инструменты показывают, что активность B находится на вершине.Я знаю, что представление с идентификатором R.id.content
является корневым представлением Activity
. Но я не знаю, почему оно все еще существует после вызова finish()
.Вы знаете, что после finish()
нет другой логики, и нет другого получателя, или какой-либо другой блок, который можно завершить.
Возможно, это проблема моего неправильного использования ActivityGroup
.Кто-нибудь может помочь?
Спасибо за ваши ответы на мой первый вопрос по stackoverflow.