zoukankan      html  css  js  c++  java
  • iOS block的使用

    前言:

    block是iOS开发中时间及参数传递的一种方法,和代理模式(delegate)相比,block是简单易用的轻量级事件传递方法。

    初始化:

    手打如下代码,或者从代码块把代码拖拽出来。

    typedef void(^upLoadImage)(NSString *str);//传参类型及形参

     

    @property(nonatomic, strong) upLoadImage block;

    方法的实现

    if (self.block) {//先判断

                    self.block(file);

                }



    使用方法前要先判断方法是否实现,若方法没有实现直接使用的话,会崩溃。

    方法的使用

    GXuploadImage *load = [[GXuploadImage alloc] init];

        __weak __typeof(self) weakSelf = self;

        load.block = ^(NSString *str) {

     

        };

    在block方法里面若使用self的方法和变量的时候,要使用weakSelf,否则会导致循环引用。

  • 相关阅读:
    漫谈五种IO模型
    jvm调优-命令大全(jps jstat jmap jhat jstack jinfo)
    Intellij IDEA 插件开发秘籍
    二进制
    java程序员必知的 8大排序
    Redis常见问题
    BitMap位图
    编程思想
    Final修饰的字段是否可以通过反射设置值
    ORACLE 11g ORA-20000: Unable to analyze TABLE "AA"."CMP3$87651", insufficient privileges or does not exist
  • 原文地址:https://www.cnblogs.com/yxl-151217/p/10411580.html
Copyright © 2011-2022 走看看