zoukankan      html  css  js  c++  java
  • 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;

      

  • 相关阅读:
    hdu 1174
    计算几何模板
    又是一年博客记
    hdu 1225 Football Score
    与逆序数有关的
    hdu 2844 Coins
    hdu 1171 Big Event in HDU
    UVA Exponentiation
    UVA Summation of Four Primes
    Linux:设置alias永久生效
  • 原文地址:https://www.cnblogs.com/16-jkd/p/5205369.html
Copyright © 2011-2022 走看看