传值三种场景:

1.属性传值(从前往后传)

需求:第二个界面标签显示第一个界面输入框文字.

第一步, 在前一个界面定义属性. (语义属性声明为copy);

第二步, 在进入下一个界面之前,给属性传入数据.

第三步, 在后一个界面读取数据.

2.代理传值(从后往前传)

需求:

第一步:在后一个界面定义协议;并且定义一个方法,有一个参数,参数类型和传值类型一样;

第二步:定义代理属性.语义特性为assign, 类型为id,并且服从协议.id<xxxdelegate>;

第三步:寻找代理对象,(在push之前)为后一个界面指定代理对象为前一个界面.

第四步:服从对应的协议(直接在.m文件延展后服从);

第五步:实现协议中的方法;

第六步:告诉代理对象什么时候(时机)执行协议中的方法(做安全处理,respondsTo);

block传值(从后往前传值)

待完成.

3.间隔多个界面传值: 方式 --- 单例传值(和属性传值类似).

第一步,创建单例类.

第二步:定义创建单例的方法.

+ (Singleton *)mainSingleton;

第三步,定义属性,存储传输的数据.

在.h文件中定义属性
@property (nonatomic, copy) NSString *text; 在.m文件中实现时,要注意加上线程保护.(因为可能会出现单例还没有创建出来的时候,就去执行了访问.单线程可以保证访问之前创建的方法肯定执行完了,也就是单例已经创建出来了.) static Singleton *single = nil;//保证第一次初始化时,能够将单例创建出来.

+ (Singleton *)mainSingleton {

@synchronized(self) {

if (!single) {

single = [[Singleton alloc] init];

}

}

return single;

}

iOS学习之页面之间传值的方式总结的更多相关文章

  1. ASP.NET页面之间传值的方式之Server.Transfer(个人整理)

    Server.Transfer 这个方法相比以前介绍的方法稍微复杂一点,但在页面间值传递中却是特别有用的,使用该方法你可以在另一个页面以对象属性的方式来存取显露的值,当然了,使用这种方法,你需要额外写 ...

  2. ASP.NET页面之间传值的方式之Cookie(个人整理)

    Cookie Cookie 提供了一种在 Web 应用程序中存储用户特定信息的方法.例如,当用户访问您的站点时,您可以使用 Cookie 存储用户首选项或其他信息.当该用户再次访问您的网站时,应用程序 ...

  3. ASP.NET页面之间传值的方式之Session(个人整理)

    Session Session在ASP.NET中,表示客户端(Goggle,Firefox,IE等)与服务器端的会话,用来存储特定会话信息,准确来说,是用来存储特定用户信息.当客户端向服务器发送一个请 ...

  4. ASP.NET页面之间传值的方式之Application(个人整理)

    Application  Application变量在整个应用程序生命周期中都是有效的,类似于使用全局变量一样,所以可以在不同页面中对它进行存取.它和Session变量的区别在于,前者是所有的用户共用 ...

  5. ASP.NET页面之间传值的方式之QueryString(个人整理)

    QueryString Querystring也叫查询字符串,这种页面间传递数据是利用网页地址URL.如果要从A页面跳转到B页面,则可以用Request.Redirect(”B.aspx?参数名=参数 ...

  6. 【转载】ASP.NET页面之间传值的方式之QueryString(个人整理)

    转自: https://www.cnblogs.com/kudsu/p/7694637.html QueryString Querystring也叫查询字符串,这种页面间传递数据是利用网页地址URL. ...

  7. iOS block进行页面之间传值

    #import <UIKit/UIKit.h> @interface FirstViewController : UIViewController @property (weak, non ...

  8. Block作为property属性实现页面之间传值(代替Delegate代理与协议结合的方法)

    需求:在ViewController中,点击Button,push到下一个页面NextViewController,在NextViewController的输入框TextField中输入一串字符,返回 ...

  9. ASP.NET 页面之间传值的几种方式

    开篇概述 对于任何一个初学者来说,页面之间传值可谓是必经之路,却又是他们的难点.其实,对大部分高手来说,未必不是难点. 回想2016年面试的将近300人中,有实习生,有应届毕业生,有1-3年经验的,有 ...

随机推荐

  1. 怎样卸载goldengate

    1. Log on to the database server (as oracle) where the GoldenGate software isinstalled.2. Change dir ...

  2. ural 1294 Mars Satellites

    #include <cstdio> #include <cstring> #include <cmath> #include <algorithm> u ...

  3. 51单片机 Keil C 延时程序的简单研究

    应用单片机的时候,经常会遇到需要短时间延时的情况.需要的延时时间很短,一般都是几十到几百微妙(us).有时候还需要很高的精度,比如用单片机驱动DS18B20的时候,误差容许的范围在十几us以内,不然很 ...

  4. MyBatis里字段到枚举类型的转换/映射

    一.简介 我们在用MyBatis里,很多时间有这样一个需求:bean里有个属性是枚举,在DB存储时我们想存的枚举的代号,从DB拿出来时想直接映射成目标枚举类型,也即代号字段与Java枚举类的相互类型转 ...

  5. sqlserver的rownum

    oracle: select  rownum from department sqlserver: select   row_number() over (order by id)  from dep ...

  6. 硝烟中的Scrum和XP-我们如何实施Scrum 4 (Part 1/2)

    4 制定Sprint计划 计划是Scrum中重要的一环; 是为了让团队获得足够信息, 不受打扰地工作, 增加团队的信心; Planning的成果: 1) Sprint目标 2) 团队成员名单(时间百分 ...

  7. 黑马程序员_JavaIO流(四)

    File概述 File类 用来将文件或者文件夹封装成对象. 方便对文件与文件夹的属性信息进行操作. File对象可以作为参数传递给流的构造函数. 了解File类中的常用方法. 字段:static St ...

  8. (转)iOS 证书、密钥及信任服务

    iOS 证书.密钥及信任服务 ——翻译自Apple Reference<Certificate,Key,and Trust Services Programming Guide> 本章描述 ...

  9. ApacheBench~网站性能测试工具

    对于网站性能测试来说,一般我们会使用loadrunner来实现,而它过于庞大,使我们感到有些不爽,而今天介绍的ApacheBench工具,它小而精,使用简单,效果直观,可以说,是比lr更好用的性能测试 ...

  10. uploadify不能正确显示中文的按钮文本的解决办法

    uploadify 目前不能正确显示中文的按钮文本. 我发现bug的原因是uploadify错误的使用了 js 的 escape 和 flash 的 unescape配对,而这2个是不兼容的.正确的转 ...