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;

 

  

转载于:https://www.cnblogs.com/16-jkd/p/5205369.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值