我想將我的主視圖類中的對象傳遞給另一個類中的其他通知接收器。將對象與NSNotificationCenter傳遞給其他視圖
我想傳遞一個名爲country的對象,它從主控制器中的SOAP請求中加載所有城市,並且我想將它發送到我的下一個視圖。
country = [[Country alloc] init];
國家標頭:
@interface Country : NSObject
{
NSString *name;
NSMutableArray *cities;
}
@property (nonatomic,retain) NSString *name;
- (void)addCity:(Cities *)city;
- (NSArray *)getCities;
- (int)citiesCount;
@end
我發現了一種方法是使用在一個的UserInfo NSDictionary的傳遞與NSNotificatios數據。但它不可能發送整個對象而不是轉換爲NSDictionary?或者傳輸它的最佳方式是什麼?我堅持試圖找出如何傳遞對象。
其實我在我的應用程序上工作了這個簡單的NSNotification。
NSNotification在主視圖控制器的實現:
//---Call the next View---
DetailViewController *detail = [self.storyboardinstantiateViewControllerWithIdentifier:@"Detail"];
[self.navigationController pushViewController:detail animated:YES];
//--Transfer Data to2View
[[NSNotificationCenter defaultCenter] postNotificationName:@"citiesListComplete" object:nil];
NSNotification在2查看控制器實現:
// Check if MSG is RECEIVE
- (void)checkMSG:(NSNotification *)note {
NSLog(@"Received Notification");
}
- (void)viewDidLoad
{
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(checkMSG:)
name:@"citiesListComplete" object:nil];
謝謝!奇蹟般有效。 我誤解了NSDictionary的概念,但知道它更清楚。 –
謝謝,夥計!我正在使用錯誤的方法,我完全得到通知,但不是userInfo。乾杯。 – Felipe