IOS 알림 메시징 메커니즘(NSNotificationCenter) 및 ARC
본문은 블로그원에서 시작되었습니다. 검색: 블로그원-자신을 찾습니다.
본 문서의 초기 주소: IOS 메시징 메커니즘(NSNotificationCenter) -http://www.cnblogs.com/xunziji/p/3257447.html메시징 메커니즘을 사용하려면
1. 관찰자 등록 정보 알림
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(getUserProfileSuccess:) name:@"Notification_GetUserProfileSuccess" object:nil];
notification Observer 관찰자:self notification Selector에서 메시지를 처리하는 방법명:getUser Profile Success notificationName 메시지 알림의 이름:NotificationGetUser Profile Success notification Sender 메시지 발송자: 어떤 발송자의 알림을 받는지 표시하고, 네 번째 파라미터가 nil이면 모든 발송자의 알림을 받습니다.
2. 메시지 알림 보내기
//UserProfile Is A Model//@interface UserProfile : NSObject
[[NSNotificationCenter defaultCenter] postNotificationName:@"Notification_GetUserProfileSuccess" object:userProfile userInfo:nil];
notificationName 메시지 알림의 이름: NotificationGetUserProfileSuccess
notificationSender 메시지 보낸 사람:userProfile
본고는 어떤 사이트의 전재를 금지하고 그 좀들을 엄하게 규탄한다.
본문은 블로그원에서 시작되었습니다. 검색: 블로그원-자신을 찾습니다.
본 문서의 초기 주소: IOS 메시징 메커니즘(NSNotificationCenter) -http://www.cnblogs.com/xunziji/p/3257447.html
3. 관찰자 메시지 처리
- (void) getUserProfileSuccess: (NSNotification*) aNotification{self.userProfile = [aNotification object];lblName.text = self.userProfile.Name;lblEENO.text = self.userProfile.EENO;lblNric.text = self.userProfile.NRIC;lblBirthday.text =self.userProfile.Birthday;lblHireDate.text = self.userProfile.Hiredate;txtMobilePhone.text = self.userProfile.Mobile;txtEmail.text = self.userProfile.Email;}
NSNotification에서 받은 메시지 정보: Name: 메시지 이름 NotificationGetUserProfile Success object: 메시지 발송자 userProfile userInfo: 메시지 전달의 데이터 정보
본고는 어떤 사이트의 전재를 금지하고 그 좀들을 엄하게 규탄한다.
본문은 블로그원에서 시작되었습니다. 검색: 블로그원-자신을 찾습니다.
본 문서의 초기 주소: IOS 메시징 메커니즘(NSNotificationCenter) -http://www.cnblogs.com/xunziji/p/3257447.html
4. 관찰자 로그아웃, 메시지 관찰자 제거
IOS에서 ARC를 사용한 후 NSNotification Observer를 제거하는 것을 표시하지 않아도 오류가 발생하지 않지만 이것은 성능과 메모리에 불리한 나쁜 습관이다.
관찰자 로그아웃에는 다음 두 가지 방법이 있습니다.
a. 가장 좋은 방법은 UIViewController.m:
-(void)dealloc {[[NSNotificationCenter defaultCenter] removeObserver:self];}
If you see the method you don't need to call [super dealloc]; here, only the method without super dealloc needed.
b. 개별 제거:
[[NSNotificationCenter defaultCenter] removeObserver:self name:@"Notification_GetUserProfileSuccess" object:nil];
본고는 어떤 사이트의 전재를 금지하고 그 좀들을 엄하게 규탄한다.
본문은 블로그원에서 시작되었습니다. 검색: 블로그원-자신을 찾습니다.
본 문서의 초기 주소: IOS 메시징 메커니즘(NSNotificationCenter) -http://www.cnblogs.com/xunziji/p/3257447.html
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Swift의 패스트 패스Objective-C를 대체하기 위해 만들어졌지만 Xcode는 Objective-C 런타임 라이브러리를 사용하기 때문에 Swift와 함께 C, C++ 및 Objective-C를 컴파일할 수 있습니다. Xcode는 S...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.