2011-03-16 3 views
2

다음은 호출 코드입니다.호출하는 것을 시뮬레이트 할 수 없습니다. applicationDidReceiveMemoryWarning :?

[[NSNotificationCenter defaultCenter] postNotificationName:UIApplicationDidReceiveMemoryWarningNotification 
                object:[UIApplication sharedApplication]]; 

UIApplicationDelegate에서 applicationDidReceiveMemoryWarning:을 호출 할 수 없습니다.

뭐가 잘못 되었나요?

+0

위임 메서드가 호출되지 않았습니까? 나는 많은 예제가 @ "UIApplicationDidReceiveMemoryWarningNotification"과 같이 알림 이름을 문자열로 만든 것을 보았습니다. 그 상수는 아마도 똑같은 것이기 때문에 정말로 중요하다고 생각하지 않습니다. – raidfive

+0

심지어 NSString으로 변경 되어도 작동하지 않습니다. – Forrest

답변

0

당신은 통지를 게시하여 메모리 경고를 시뮬레이션 할 수 있습니다. UIApplicationDidReceiveMemoryWarningNotification은 메모리 경고를 받으면UIApplication에 의해 에 게시되지만이를 관찰하지는 않으므로 이러한 알림을 수동으로 게시 할 때보기 컨트롤러의 didReceiveMemoryWarning: 메서드를 호출하지 않습니다.

Rob은 이미 지적했듯이 "Simulate Memory Warning"메뉴 항목을 사용하여 iOS 시뮬레이터에서 메모리 경고를 시뮬레이션 할 수 있습니다.

didReceiveMemoryWarning:을 구현하는 대신보기 컨트롤러에서 알림을 볼 수도 있지만 그렇게하지 않는 것이 좋습니다. 시스템에서 제공하는보기 컨트롤러의 동작이 다를 수 있으므로 권장하지 않습니다.

0

: 시뮬레이터에서

[[NSNotificationCenter defaultCenter] postNotificationName:@"UIApplicationMemoryWarningNotification" 
     object:[UIApplication sharedApplication]]; 
2

, 낮은 메모리 경고를 트리거 메뉴를 사용합니다.

enter image description here

관련 문제