##DAY8 界面通信
##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 界面通信的更多相关文章
- UI:UINavigationController、界面通信
IOS中实现对控制器的管理的控制器有:UINavigationController 和 UITableBarController 两个控制器.下面是主要学习前者. 参考 ⼀.UINavigationC ...
- iOSDay27之界面通信
1. 属性传值(前面的界面给后面传值) 第一步: 在 SecondViewController.h 文件里定义一个存放传过来值的变量 contents #import <UIKit/UIKit. ...
- iOS学习之界面通信
一.属性传值 在SecondViewController.h里 #import <UIKit/UIKit.h> @interface SecondViewController : UIVi ...
- UI基础:UINavigationController、界面通信
UINavigationControlle UINavigationController:导航控制器,是iOS中最常用的多视图控制器之一,它用来管理多个视图控制器.也称为多视图控制器. 导航控制器可以 ...
- 界面通信之block传值
block传值有两种方式 ⽅式⼀: 使⽤block属性实现回调传值 ⽅式⼆: 在⽅法中定义block实现回调传值 方式一比较便于理解而且常用,下面介绍方式一是如何传值的 使用block属性传值和代理传 ...
- 1 TCP/IP通信
重点参考长链接http://blog.csdn.net/fengyuzhengfan/article/details/38830115 http://blog.csdn.net/Jsagacity/a ...
- IOS开发官方文档随笔
马上着手开发IOS应用程序 创建第一个单视图应用 ###main 方法 int main(int argc, char * argv[]) { @autoreleasepool { return UI ...
- 【ASP.NET】UCenter实现多站点同步登录退出
利用UCenter实现discuz论坛和应用网站同步登录和退出功能 测试环境:Discuz! X3.2.UCenter 1.6..Net Framework 4.0 进入Discuz 后台的UCent ...
- Android按键添加和处理的方案
Android按键添加和处理的方案 版本号 说明 作者 日期 1.0 Android按键添加和处理的方案 Sky Wang 2013/06/18 需求:Android机器上有个W ...
随机推荐
- 配件BOM定义限制(只定义配件的)
应用 Oracle Bill Of Materiel 层 Level Function 函数名 Funcgtion Name BOM_BOMFDBOM 表单名 Form Name BOMFDBOM ...
- stack的应用
STL除了给我们提供了一些容器(container)以外,还给我们提供了几个容器适配器(container adapters),stack便是其中之一 看过STL源码的人都知道,stack其实是内部封 ...
- c++链接数据库测试,中文有问题
#include <stdio.h> #include <stdlib.h> #include <string.h> #include <Windows.h& ...
- npm 常用命令
npm install xxx 安装模块npm install xxx@1.1.1 安装1.1.1版本的xxxnpm install xxx -g 将模块安装到全局环境中.npm ls 查看安装的 ...
- 解析nodejs微信开发-2获取ticket
获取ticket是需要拼接url,url中需要获得的tocken 1.先判断有无tocken:若有则拼接url: 2.请求url: a.处理回调数据,注意时间戳和签名处理方式,此两项并未存到ticke ...
- 全互联结构DVPN综合配置示例
以下内容摘自正在全面热销的最新网络设备图书“豪华四件套”之一<H3C路由器配置与管理完全手册>(第二版)(其余三本分别是:<Cisco交换机配置与管理完全手册>(第二版).&l ...
- md笔记——编程术语
thinkPython 读书笔记 本列表根据thinkPython中记录的大量编程术语 整理而来. 该书的重点不是教会你Python,而是培养读者用计算机科学家一样的思路来思考,设计,开发. 讲解了语 ...
- JAVA编译中拒绝访问的问题及解决方案
在java编译时出现,可以将C盘内的文件转移到其他盘,此问题可能是权限不足不能够读取C盘文件造成的. 文件名与类名要一致,包括大小写,也是要一致!
- 一道面试题细说C++类型转换
开篇先说这道面试题: class ClassA { public: virtual ~ ClassA() { } virtual void FunctionA() { } }; class Class ...
- Oracle经典书籍推荐
转自:http://www.cnblogs.com/fjfzhkb/archive/2007/12/05/983381.html 很多网友询问如何选择入门书籍,学Oracle有什么好书,这里给出一些常 ...