objective-c 回调函数
回调函数可以说是很有用的东西,刚接触object-c,回调函数自然需要重点研究下:
回调函数:
类A调用类B, 类B需要调用A中的某个函数
通常有两个步骤:
- 回调函数注册 类A将自己的函数作为回调函数注册到B
- 函数调用,类B中达到某个条件时调用类A注册到类B的回调函数
object-c中回调函数需要使用协议:protocol来实现,如下:
步骤一 创建protocol
@protocol myprotocoltest <NSObject>
@required
-(void)callback:(int)par;
@end
步骤二 创建类B 运行回调函数
classB.h
@interface MalertViewUtil : NSObject{
id<myprotocoltest>delegate;
}
@property (nonatomic, retain) id<myprotocoltest>delegate;
-(void)test;
@end
classB.m
@implementation ClassB
@synthesize delegate;
-(void)test{
[self.delegate callback];//调用回调函数
}
@end
第三步 类A进行回调函数注册
classA.h
@interface CselectNotes : UITableViewController<myprotocoltest>
-(void)classAtest;
@end
classA.m
@implementation ClassB
-(void)callback:(int)par{
NSLog(@"callback classA");
}
-(void)classiest{
classB *classBtest = [[classB alloc] init];
classBtest.delegate = self;
[classBtest test];//调用回调函数
}
@end
需要注意:
类A必须遵守协议
objective-c 回调函数相关推荐
- Go 学习笔记(16)— 函数(02)[函数签名、有名函数、匿名函数、调用匿名函数、匿名函数赋值给变量、匿名函数做回调函数]
1. 函数签名 函数类型也叫做函数签名,可以使用 fmt.Printf("%T") 格式化参数打印函数类型. package mainimport "fmt"f ...
- OpenCV(六)形态学操作1--基础:膨胀与腐蚀(回调函数)
目录 形态学通用API:morphologyEx 一.基础理论 1.邻接关系 (1)四邻接: (2)D邻接: (3) 八邻接: 2.连通性 (1)四连通: (2)八连通: (3)m连通: 3.形态学基 ...
- 函数指针--Nginx和Redis中两种回调函数写法
1.Nginx和Redis中两种回调函数写法 #include <stdio.h>//仿Nginx风格 //结构外声明函数指针类型 typedef void (*ngx_connectio ...
- 回调函数在C/C++中的使用
回调函数就是一个通过函数指针调用的函数.假如把A函数的指针当作参数传给B函数,然后在B函数中通过A函数传进来的这个指针调用A函数,那么就是回调机制.A函数就是回调函数,而通常情况下,A函数是在系统符合 ...
- 【FFmpeg】自定义回调函数处理AVIOContext中的数据
1.简述 AVIOContext是FFmpeg管理输入输出数据的结构体,它的成员变量有指向数据的指针.大小以及处理数据的回调函数指针等等.如果使用avio_open或avio_open2来创建,它会根 ...
- php 回调递归,PHP数组函数 array_walk_recursive (使用回调函数递归遍历数组元素)
在PHP中,数组函数 array_walk_recursive () 使用回调函数递归遍历数组元素. 函数语法:array_walk_recursive ( array &$array , c ...
- ajax post的回调函数另一个方法,jQueryajax–post()方法 - 米扑博客
jQuery ajax - post() 实例 请求 test.php 网页,忽略返回值: $.post("test.php"); 通过 AJAX POST 请求改变 div 元素 ...
- nodejs回调函数理解
回调实例 问题:想要得到一秒后 计算出的结果 //错误写法function add(x,y) {console.log(1);setTimeout(function () {console.log(2 ...
- dispatch callback ant design pro 网络请求回调函数
index.jsx 代码解析:在组件初次渲染时调用 model 中 命名空间为 a_models 的 getData 网络请求,传了一个patload 参数和 callback 回调函数过去,然后 ...
- js回调函数和函数带参数的使用示例
微信小程序开发交流qq群 173683895 承接微信小程序开发.扫码加微信. //demo1 <html><head><meta charset=" ...
最新文章
- 你会不会模拟超过 5 万用户的并发访问?
- [BZOJ3595][SCOI2014]方伯伯的OJ(裂点Splay)
- spring mvc DispatcherServlet详解之四---视图渲染过程
- LeetCode-206 反转链表
- [css] 举例说明与打印有关的属性有哪些?
- 钉钉、微信产品大PK,基因已经决定了结果
- Lwip协议详解(基于Lwip 2.1.0)-内存管理
- 台式计算机键盘驱动程序,电脑中使用驱动人生检测不到键盘驱动程序怎么解决...
- 点金软件测试自学,徐文明短线点金相关公式
- 降了还是涨了?瓶装水市场再秀迷幻操作
- 微信网页授权接口 对象存储
- Codeforces 1194D
- 飞秋教程 2013 阳阳整理完整版
- Linux中不同MTD设备分区,Linux MTD设备总结
- DB2 V9.7新特性 - 降低高水位标记
- 个人简历特长及自我评价怎么写?
- 《惢客创业日记》2022.01.01-31(周六)我的第七次心智提升
- 飞桨2.0高层api教程——使用预训练词向量进行文本分类
- C语言结构体的存储空间分配
- intel(R) Dual BandWireless-Ac 7265 工作异常(代码31) 以及Windows仍在设置此设备的类配置(代码56)
热门文章
- java phoneweb_《Android、iPhone、Windows Phone手机网页及网站设计—
- 张文骁:游戏开发的“零件人”梦碎之后|OneFlow U
- C/C++堆区、栈区、常量区、静态数据区、代码区详解
- PHP 数组操作 和 随机数
- 总结现在,展望未来——2013-2014年终总结
- 看完这组照片,你还敢说自己会PS吗?
- codeup墓地目录
- 【问卷有奖奖奖奖奖】云栖大会调研问卷~!甜美小姐姐贡献全部身家只求真心话...
- python04-list,tuple
- from用法 prepare_MySQL 预处理语句prepare、execute、deallocate的使用