zoukankan      html  css  js  c++  java
  • 05056简单kvo

        //kvo0506

    //    [_collectionView addObserver:self forKeyPath:@"frame" options:NSKeyValueObservingOptionNew context:nil];

     //kvo0506

    -(void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary<NSString *,id> *)change context:(void *)context{

    //    //keypath 是观察的属性

    //    NSLog(@"---------keypath:%@",keyPath);

    //    //被观察的对象

    //    NSLog(@"---------object:%@",object);

    //    //新旧值

        NSLog(@"---------change:%@",change);//change是字典

    //

    //    NSLog(@"---------context:%@",context);

        

        if ([change[NSKeyValueChangeNotificationIsPriorKey]boolValue]) {

            NSLog(@"1");

            NSLog(@"值改变之前");

        } else{

    //        NSLog(@"2");

    //        NSLog(@"值改变之后");

        }

        

        

        

        //    self.view.backgroundColor = [UIColor greenColor];

        

        //context的作用就是传值/////////////////////////////

    //    ViewController *vc = (__bridge ViewController *)context;

    //    

    //    vc.view.backgroundColor = [UIColor greenColor];

     

     

     

    }

     

    -(void)dealloc{

        

        [_collectionView removeObserver:self forKeyPath:@"frame"];

    }

  • 相关阅读:
    C#中的委托,匿名方法和Lambda表达式
    Java 8 Lambda表达式探险
    Lambda表达式有何用处?如何使用?
    有参数的程序,可以被调用
    怎样用VB编写.DLL动态链接库文件
    Oracle 存储过程包
    EB(存储单位)
    排序之快速排序(上)
    排序之冒泡排序
    排序之堆排序
  • 原文地址:https://www.cnblogs.com/gzz2016/p/5465745.html
Copyright © 2011-2022 走看看