반응형
onActivityResult ()에서 super.onActivityResult ()를 사용할 필요가 있습니까?
어느 것이 더 낫고 그 이유는 무엇입니까?
이 하나:
@Override
public void onActivityResult(int requestCode, int resultCode, Intent intent) {
super.onActivityResult(requestCode, resultCode, intent);
...
}
아니면 이거:
@Override
public void onActivityResult(int requestCode, int resultCode, Intent intent) {
// do not call super.onActivityResult()
...
}
첫 번째가 더 좋습니다.
Activity
API의 다른 이벤트 함수와 더 일관성이 있으며 비용이 들지 않으며 (호출하는 코드는 현재 아무 작업도하지 않음) 기본 클래스가 변경됩니다.
편집하다
황수 아가 지적했듯이 미래에 변하는베이스 클래스의 행동에 대한 나의 예측이 이루어졌다! 에서 메서드를 호출 FragmentActivity
해야 합니다 super
.
지원 패키지 (SherlockFragmentActivity)에서 FragmentActivity를 사용하는 경우 super.onActivityResult를 호출해야합니다. 그렇지 않으면 필요하지 않지만 그것을 위해 거기에 꽂을 것입니다. FragmentActivity의 소스를 확인합니다 (onActivityResult가 비어 있지 않음).
Activity
애플리케이션에 종속 된 하위 클래스가 여러 개 있는 경우가 아니면 super.onActivityResult()
의 구현 onActivityResult()
이 비어 있기 때문에 호출 이 필요한 것처럼 보이지 않습니다 (API 레벨 15를 확인했습니다).
Activity 의 소스 코드를보고 직접 답할 수 있습니다 .
기본적으로 onActivityResult(...)
다음과 같은 구현입니다 .
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
}
... 아무것도하지 않습니다.
기본 구현이 비어있는 것처럼 보이지만 향후 업데이트에서는 항상 그렇지는 않을 수 있습니다. 나는 그것을 사용하는 것이 좋습니다
반응형
'programing' 카테고리의 다른 글
액세스 네트워크 상태 (ACCESS_NETWORK_STATE)와 WIFI 상태 (ACCESS_WIFI_STATE) 권한의 차이점은 무엇입니까? (0) | 2021.01.16 |
---|---|
삽입하지 않고 NSManagedObject를 인스턴스화하는 방법이 있습니까? (0) | 2021.01.15 |
Bootstrap 컨테이너 요소에는 행 요소가 포함되어야합니까? (0) | 2021.01.15 |
C # switch 문의 기본 레이블은 nullable 열거 형을 어떻게 처리합니까? (0) | 2021.01.15 |
Spring에서 조건부 자동 연결을 수행하는 방법은 무엇입니까? (0) | 2021.01.15 |