海报NSNotificationCenter解决方法后添加观察者?

时间:2015-02-09 08:06:11

标签: ios nsnotificationcenter delegation

是否可以将委托或NSNotificationCenter观察者分配给在发生帖子的VC1之后加载的VC2?

我有一个包含多个VC的标签栏应用。首先加载VC 1,然后在加载VC2之前发生触发帖子的操作。在VC2中,我需要从VC1复制或获取数组的引用。

还有其他办法吗?请帮忙!我现在已经在这4个小时了。感谢

2 个答案:

答案 0 :(得分:1)

试试这可能对你有所帮助。

<强> FirstViewController

-(void)viewDidAppear:(BOOL)animated
{
    NSArray *temp=[NSArray arrayWithObjects:@"1",@"2", nil];

    [[NSNotificationCenter defaultCenter] postNotificationName:@"postArrayObject" object:temp];

}

<强> SecondViewController

-(void)viewWillAppear:(BOOL)animated
{

    [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(objFirstViewController:) name:nil object:nil];

}
-(void)objFirstViewController:(NSNotification *)notification
{
    if ([[notification name]isEqualToString:@"postArrayObject"])
    {
        NSArray *cellData = [notification object];
        if (cellData)
        {
            UIAlertView *message = [[UIAlertView alloc] initWithTitle:@"WORKING"
                                                              message:nil
                                                             delegate:nil
                                                    cancelButtonTitle:@"OK"
                                                    otherButtonTitles:nil];

            [message show];
        }

    }

}

答案 1 :(得分:0)

如果您创建一种具有对所有VC的引用然后使用addSubviewremoveFromSuperview

进行切换的NavigationController,可能会更好