iOS传值的方式

  1. 属性传值
  2. 方法传值
  3. 代理传值(delegate)
  4. block传值
  5. 单例模式方式
  6. 通知notification方式
  7. UserDefault或者文件方式

1.属性传值

情况:A页面跳转到B页面

  • 这种方法只适用于从前往后传值(上一个页面推到下一个页面)
  • 属性传值第一步需要用到什么数据类型就定义什么样的属性
  • 在上一个页面到下一个页面的选中方法里面将要传的值赋给属性

2.方法传值

与属性传值 一样,但是要通过使用方法传值,可以直接将方法与初始化方法合并,此时当触发FirstViewControlle视图的按钮点击事件并跳转到SecondViewController视图时,在按钮点击事件中可以直接通过重写的SecondViewController视图的初始化方法

传值用

 @property(nonatomic,retain) NSString *firstValue ;

重写初始化方法,用于传值

 - (id)initWithValue:(NSString *)value
{
if (self = [super initWithNibName:nil bundle:nil]) {
self.firstValue = value;
}
return self;
}

方法传值:

 - (void)buttonAction:(UIButton *)button {
//将方法传值与初始化写到一起
SecondViewController *second = [[SecondViewController alloc]
initWithValue:_txtFiled.text]; //此时已经将值存在firstValue中
[self.navigationController pushViewController:second animated:YES];
}

3.代理传值(delegate)

情况:A页面跳转到B页面,B页面再返回A页面

UI中的协议为当前类名 + Delegate

  1. 声明代理
  2. 代理对象执行协议
  3. 指定第二个界面的代理对象为自己
  4. 接收协议
  5. 实现协议中的方法

4.block传值

  1. 定义bolock
  2. 声明block类型的属性
  3. block的实现
  4. 调用block

5.单例模式方式

单例只会对某个类实例化一次/单例类,对单例这个类实例化一次有且仅有一个对象

6.通知notification方式

7.UserDefault或者文件方式

iOS界面传值的方式(7种)的更多相关文章

  1. 新手介绍简单一下iOS开发中几种界面传值

    首先在处理iOS-UI中,也许在很多地方需要用到两种甚至多种不同界面之间的传值,相比这也是很多iOS入门成员头疼问题,同样作为新手的我在接触这类传值时候也一脸懵然,经过一段时间的研究,对于简单的传值有 ...

  2. 属性传值,协议传值,block传值,单例传值四种界面传值方式

    一.属性传值 对于属性传值而言,相对于其它的三种 方法来说,是最基础,最简单的一种 方法,但,属性传值 有很大的局限性,因为是适用于第一个界面向第二个界面传 值,第二个向第三个界面传值等等.N界面向N ...

  3. NSNotification,NSNotificationCenter的使用、iOS中五种对象间传值的方式

    学习内容 NSNitification与NotificationCenter(通知与通知中心) 通知的使用 [[NSNotificationCenter defaultCenter]addObserv ...

  4. ios 页面传值4种方式(一) 之全局变量

    通用的是用代理的方式实现页面传值,但是有时候利用其它方式也可以很巧妙的解决问题,页面传值一共有4种方式: 1.使用全局变量, SharedApplication,定义一个变量来传递. 2.使用文件,或 ...

  5. iOS页面间传值的方式(NSUserDefault/Delegate/NSNotification/Block/单例)

    iOS页面间传值的方式(NSUserDefault/Delegate/NSNotification/Block/单例) 实现了以下iOS页面间传值:1.委托delegate方式:2.通知notific ...

  6. 【转】iOS页面间传值的方式(Delegate/NSNotification/Block/NSUserDefault/单例)-- 不错

    原文网址:http://www.cnblogs.com/JuneWang/p/3850859.html iOS页面间传值的方式(NSUserDefault/Delegate/NSNotificatio ...

  7. ios中的界面跳转方式

    ios中,两种界面跳转方式 1.NavgationController本身可以作为普通ViewController的容器,它有装Controller的栈,所以可以push和pop它们,实现你所说的跳转 ...

  8. iOS页面间传值的方式 (Delegate/NSNotification/Block/NSUserDefault/单例)

    iOS页面间传值的方式(Delegate/NSNotification/Block/NSUserDefault/单例)   iOS页面间传值的方式(NSUserDefault/Delegate/NSN ...

  9. iOS学习之页面之间传值的方式总结

    传值三种场景: 1.属性传值(从前往后传) 需求:第二个界面标签显示第一个界面输入框文字. 第一步, 在前一个界面定义属性. (语义属性声明为copy); 第二步, 在进入下一个界面之前,给属性传入数 ...

随机推荐

  1. 7z命令行参数中的路径

    最近在自动化的过程中用到了7z命令行工具,发现其参数中的路径挺有意思的,在此总结一下.本文中所有demo使用的7z版本为:15.14 x64. 压缩某个文件夹 下面的命令会把g:\temp\目录和目录 ...

  2. NET RichTextBox控件如何可以插入图像

    本文介绍.NET RichTextBox控件如何可以插入图像,控制和ActiveX对象通过使用OLE方式,如在解释,.不幸的是,它涵盖了只用一个C源代码样本,所以我需要在托管代码(C#)实施类似的解决 ...

  3. a[href^=""]的解释

    a[href^="绝对路径"]这个算一种属性选择器,在这里是用来选择链接属性为“绝对路径”的a标签,其中的^其实是"以什么为开始"(begin with)的意思 ...

  4. MYSQL 函数 字符串到整数

    SELECT CAST('002' AS signed) 结果为2 SELECT CAST('125e342.83' as signed) 结果为 125

  5. C++移位运算符

    关于逻辑移位.算术移位可参见迅雷深大笔试题部分.的一道题. 以前看到C++标准上说,移位运算符(<<.>>)出界时的行为并不确定: The behavior is undefi ...

  6. 炉石传说 C# 开发笔记 (源代码整理公开)

    源代码已经整理过了,去除了不需要的项目. 注意:以前文章中出现过的Git已经变更过了,请以前关注过,Fork过的朋友,重新Fork一下. GitHub地址 卡牌XML文件的做成:(Git上面是没有XM ...

  7. UrlRewriter实现.NET的URL重写

    首先下载安装MSDNURLRewriting.msi,链接地址http://pan.baidu.com/s/1c0pRnTu. 在安装目录下找到RewriterTester\bin\URLRewrit ...

  8. 【软件使用】GitHub使用教程for Eclipse

    http://www.cnblogs.com/yc-755909659/p/3753626.html 1.下载egit插件 打开Eclipse,git需要eclipse授权,通过网页是无法下载egit ...

  9. PHP旧系统基于命名空间重构经验

    命名空间其实只是一个形式,最终目的是重构代码,但这个过程想要一蹴而就是不可能的. 一开始给了一个伪命题:基于ThinkPHP的重构(不要问为什么).经过一段的实践,发现这是一个大错特错的思维方式,其中 ...

  10. 【算法和数据结构】_11_小算法_itoa、ftoa及字符串倒置

    [1]main.c /**************************************************** * * 把整数按照进制数转换为相应进制的字符串 *(要考虑符号),比如 ...