• iOS基础之单例传值


      在之前的界面通信中,我们讲诉了3种传值方法,现在我们提供一种更为方便的传值方法叫做单例传值。

      单例的优点在于创建时是全局变量,可以在外部可以使用,没有逐级传值的局限性。但是单例传值会有内存问题,不能将单例进行内存释放,大量创建单例传值,会造成内存问题。

      代码演示:

    #import "Handler.h"
    //创建单例
    static Handler *handler = nil;
    
    @implementation Handler 
    
    + (instancetype)shareInstance{    
    
        @synchronized(self) {//任意对象
    
        if (handler == nil) {
    
        handler = [[Handler alloc] init];//如果是空就创建否则 不创建
           }
        }
        return handler;
    }
    
    1 创建好单例类,引入单例的头文件
    
       //初始化,创建单例
        Handler *handler = [Handler shareInstance];
    
        //把要传的值(UITextField的值) 赋值给单例内部声明的属性
    
        handler.string = _textField.text;
    
    2 接收要传的数值,引入单例的头文件,
        //初始化,创建单例
    
    
        Handler *handler = [Handler shareInstance];
    
        //接收单例的值,传给label
    
        label.text = handler.string;

      

  • 相关阅读:
    expect简介和使用例子(转)
    openshift网络
    openstack相关
    SDN的开源方案sonic
    OpenStack Neutron ML2 Deep Dive
    2017双11技术揭秘—阿里数据库计算存储分离与离在线混布
    es的gui工具
    django orm中blank和null的区别
    断关联多表关系阐述
    视图使用
  • 原文地址:https://www.cnblogs.com/16-jkd/p/5205369.html
Copyright © 2020-2023  润新知