http://blog.csdn.net/huifeidexin_1/article/details/7567731

解决方案 »

  1.   


    请问如果我在一个类实例了多个nsobject
    然后对多个nsobject执行 nsobject.delegate = self;
    那这个类中的方法执行的时候如何判断属于哪个nsobject?
      

  2.   


    请问如果我在一个类实例了多个nsobject
    然后对多个nsobject执行 nsobject.delegate = self;
    那这个类中的方法执行的时候如何判断属于哪个nsobject?很多方法,一般是tag或者自定义一个属性用来区分
      

  3.   

    和c#里面差不多 button的click事件一样 btn_click(object sender,EventArgs e) 这个sender就是按钮
    delegate的方面里面把nsobject带上也可以,类似tableView这样
    - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
      

  4.   

    delegate 和 NSNotificationCenter 应该都可以实现。
    对象间数据的交互的过程中,对象本身无非承担了两种角色,数据的发送者(sender),以及数据的接收者(receiver). 发送者定义了接收者需要遵循的协议(protocol). 接收者需要实现发送者定义的协议。协议是两者的桥梁也是约束。
    delegate 与 NSNotificationCenter之间是有很大区别。如何根据自己的需求,选择合适的解决方案是很关键的问题。delegate 关注的是两个对象关系紧密,如果让这两个关系紧密的对象解藕。 NSNotificationCenter 是以通知中心观察者的模式来实现。只要注册了消息的观察者都可以接收到发送的消息。