##DAY8 界面通信

注意:延展中写的东西只能在类内使用

#pragma mark ———————属性传值——————————

(第一个页面往第二个页面传值)

一、属性传值:(第一个页面往第二个页面传值)

属性传值:可以自定义属性、也可使用控件、视图的自带属性

1、属性传值用于第一个界面向第二个页面传值

2、明确两者联系的桥梁,也就是触发跳转的地方

3、明确传输的值:类型是什么

4、在第二个视图控制器内部声明相对应类型的属性,来接收传输的值

5、在第二个界面使用传入的值

注意:属性在传值中如果对此属性进行了setter赋值,引用计数 +1,要在dealloc中释放

#pragma mark ———————Block——————————

1、Block是一种数据类型,并且是一种自定义的数据类型

2、Block的标志是^(托字符)

3、Block是匿名函数,TA与函数最主要的区别在于,函数在编译期就已经知道了封装了什么功能,但是Block只有当执行时才知道内部封装的功能,所以说Block更加灵活多变

4、Block的作用也是封装代码段来实现具体功能

5、既然Block是匿名函数,所以赋值时,不能将函数名直接赋值,初值函数的实现体

书写格式:

1、初值中的返回值类型可以不写,但是必须保证函数内部返回给外界的类型与返回值相同

2、定义Block变量的类型中,参数名可以省略不写,但是初值中参数名不能不写,否则无法参与运算

3、如果Block没有参数,那么在初值中表示参数的小括号可以不写

基本使用方法:

Block与变量作用域的关系:

注意:

#pragma mark ———————Block传值——————————

(第二个页面往第一个页面传值)

Block作为参数:

#pragma mark ———————Block传值——————————

##DAY8 界面通信的更多相关文章

  1. UI:UINavigationController、界面通信

    IOS中实现对控制器的管理的控制器有:UINavigationController 和 UITableBarController 两个控制器.下面是主要学习前者. 参考 ⼀.UINavigationC ...

  2. iOSDay27之界面通信

    1. 属性传值(前面的界面给后面传值) 第一步: 在 SecondViewController.h 文件里定义一个存放传过来值的变量 contents #import <UIKit/UIKit. ...

  3. iOS学习之界面通信

    一.属性传值 在SecondViewController.h里 #import <UIKit/UIKit.h> @interface SecondViewController : UIVi ...

  4. UI基础:UINavigationController、界面通信

    UINavigationControlle UINavigationController:导航控制器,是iOS中最常用的多视图控制器之一,它用来管理多个视图控制器.也称为多视图控制器. 导航控制器可以 ...

  5. 界面通信之block传值

    block传值有两种方式 ⽅式⼀: 使⽤block属性实现回调传值 ⽅式⼆: 在⽅法中定义block实现回调传值 方式一比较便于理解而且常用,下面介绍方式一是如何传值的 使用block属性传值和代理传 ...

  6. 1 TCP/IP通信

    重点参考长链接http://blog.csdn.net/fengyuzhengfan/article/details/38830115 http://blog.csdn.net/Jsagacity/a ...

  7. IOS开发官方文档随笔

    马上着手开发IOS应用程序 创建第一个单视图应用 ###main 方法 int main(int argc, char * argv[]) { @autoreleasepool { return UI ...

  8. 【ASP.NET】UCenter实现多站点同步登录退出

    利用UCenter实现discuz论坛和应用网站同步登录和退出功能 测试环境:Discuz! X3.2.UCenter 1.6..Net Framework 4.0 进入Discuz 后台的UCent ...

  9. Android按键添加和处理的方案

    Android按键添加和处理的方案  版本号 说明 作者 日期  1.0  Android按键添加和处理的方案 Sky Wang  2013/06/18        需求:Android机器上有个W ...

随机推荐

  1. Storm csdn

    blog.csdn.net/lonelytrooperblog.csdn.net/leytton http://my.oschina.net/apdplat/blog/308396

  2. poj2871

    #include <stdio.h> #include <stdlib.h> //法一 int main() { ]; ,tmp; ) { scanf("%lf&qu ...

  3. struts2的初步认识!

    struts2的jar包会完成一些工作,让你的数据和显示很好的联系在一起.     开始的时候,主要通过三个点来完成Struts2的工作          1,JAVA类     2,struts.x ...

  4. IHttpModule与IHttpHandler的区别整理

    IHttpModule与IHttpHandler的区别整理1.先后次序.先IHttpModule,后IHttpHandler. 注:Module要看你响应了哪个事件,一些事件是在Handler之前运行 ...

  5. dataset 用法(2)

    1.为DataTable添加列 (1)添加列 DataTable  tbl = ds.Tables.Add("User"); DataColumn col =tbl.Columns ...

  6. SendMessage用法实例

    转: http://blog.csdn.net/coolszy/article/details/5523700 SendMessage用法 windowsbuttonmenucommandlistc# ...

  7. prototype演变

    setp1 var Person = function () {}; //构造器 var p = new Person(); setp1 演变: var Person = function () {} ...

  8. APP应用的发展趋势

    PhoneGap 是什么 PhoneGap 是一个用基于HTML,CSS 和JavaScript 的,创建移动跨平台移动应用程序的快速开发框架.它使开发者能够利用iPhone,Android,Palm ...

  9. 【转】CoreData以及MagicalRecord (一)

    先粗略的了解下CoreData中的一些核心概念 1. CoreData 的核心概念 先上两幅关键的概念图 (1)NSManagedObjectModel 托管对象模型(MOM)是描述应用程序的数据模型 ...

  10. MongoDB入门学习(一)—— 安装和启动

    最近由于工作需要,开始学习MongoDB数据库了.第一篇博文就从这里开始吧,以此记录下学习中的点点滴滴,为自己加油呢! (一) MongoDB简介 网上搜搜了一下:(来源:http://www.run ...