• IOS传值---属性传值、代理委托传值(delegate)传值、单例传值、block传值


    单例传值

    实际开发中,一般将用户的信息储存在单例之中,单例保证了只有一个事例,一旦系统调用单例方法,就可以对其中的内容进行修改,读取等等。

                                                            

     属性传值

    实际开发中,经常会遇到这种情况:前一个页面push到一个新的控制器,push的过程中,需要alloc一个新的控制器实例,我们还需要将前一个页面的信息传递到新建的控制器中,例如系统的通讯录,点击某一个联系人会有部分信息显示到下一控制器。  如何解决呢,我们在新alloc的控制器中声明需要接受数据的类型的属性。直接肤质即可。
     
    代理传值
    原理是在委托者里赋值,在实现者里通过回调方法取值。
     
     
    Block传值
    将需要传递的信息作为block的参数。一般block都是写在一个控制器中的一个属性。alloc该类的控制器之后,就能得到一个block属性,参数也就自然而然的被传递过来了。典型的用法是判定多个页面用户是否已经登录(当然,单例更简单)
    但是由于需要alloc实例才可以使用,造成了一定的局限性。但是我们可以通过和单例结合的方式来使用block。以后有时间会写出具体用法。
  • 相关阅读:
    glog下载、安装、使用
    VS所需插件
    Qt 实现动态调整流程指令顺序(通过鼠标事件实现)
    QComboBox实现复选框功能
    QString string char* int互相转化
    Qt 滚动区域显示下拉框
    模式对话框,非模式对话框,reject和accept()槽函数确定对话框的返回值
    QT递归搜索文件(entryList)
    QT中foreach的使用
    Qstring格式化字符串
  • 原文地址:https://www.cnblogs.com/xukunhenwuliao/p/3555150.html
Copyright © 2020-2023  润新知