나는 인 텐트를 통해 두 번째 활동을 호출하는 활동이 있습니다. 두 번째 Activity가 호출 된 후 첫 번째 Activity를 끝내고 싶습니다. 따라서, 나는 onStop()
방법에 다음 코드를 가지고 :finish()를 호출해야합니까?
@Override
public void onStop() {
super.onStop();
if (shouldBeClosed) {
finish();
}
}
문제는 내 첫 번째 활동이 폐쇄되지 않는 것입니다. 왜 그런지 이해가 안되니?
아마이 코드를 onPause()
에 넣어야합니까?
하지만이 경우 이해할 수있는 것처럼, 포커스가 느슨 할 때 (예 : 대화 상자 호출 후) 내 활동을 닫을 수 있습니다.
그래서 왜 이런 일이 발생하고 어떻게이 문제를 해결할 수 있을까요?
P. 변수 shouldBeClosed
이 참입니다. 이것은 요점이 아닙니다.
편집 여기
두 번째 활동의 호출입니다 :
Intent intent = new Intent(this, AcSpContextAssign.class);
Bundle extras = new Bundle();
extras.putInt(Constants.KEY_FROM_ACTIVITY, Constants.FROM_AcSpNameCreate);
extras.putLong(Constants.KEY_SPID, spId);
intent.putExtras(extras);
startActivity(intent);
이 정상적인 청소를 수행 할 수 있도록 마무리 활동의 습관 나는 다음 활동을 만들면 더 이상 필요하지 않게되었습니다. 나는 onPause() 또는 onStop()을 사용하여이 문제를 해결할 수 있다고 생각합니다. 어떻게 닫혔는지 알 수 있습니까? 얼마나 오래 살아 있니? – Joel
뒤로 버튼을 누르거나 단순히 두 번째 활동을 마치면 첫 번째 활동을 봅니다. – Yury
에 동의했습니다. 어떻게 완료되지 않았는지 알고 계십니까? 'onCreate()'에 중단 점을 넣어서 확실히 알 수 있습니다. 'onStop()'코드가 실행 된 후에 다음 번에 활동을 호출 할 때'onCreate()'가 호출되어야합니다. –