十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
block用于传值 效率比代理更高 比如要把A界面的值传给B界面
在随州等地区,都构建了全面的区域性战略布局,加强发展的系统性、市场前瞻性、产品创新能力,以专注、极致的服务理念,为客户提供网站建设、做网站 网站设计制作按需制作网站,公司网站建设,企业网站建设,品牌网站建设,成都全网营销,成都外贸网站建设公司,随州网站建设费用合理。
(1) 定义block A界面的 .h
typedef void(^SubViewBlock)(NSString*title);
@interface A :UITableViewController
//block 变量可以作为属性
//block变量无法用retain来修饰,修饰符用copy;block变量本身的内存空间在栈上开辟,为block 赋值的函数的内存空间在堆上开辟
@property(nonatomic,copy)SubViewBlock viewBlock;
(2) 在 A界面的 .m 文件中 传值
if(_viewBlock) {//调用block
_viewBlock(_dataArray[indexPath.row]);
}
(3)在B界面接收值
A *a = [[A alloc]init];
//为block 赋值
a.viewBlock= ^(NSString*title){
NSLog(@"send value!");
self.navigationItem.title= title;
};
一:.h
int type 是要传的值 可以跟多个值 多个值用,分开
二:.m
传值
三:接收值
给cell 设置tag用来标记是第几个cell
tag就可以知道是点击的那一个cell
开发中使用block进行回调传递消息、传递参数还是很方便的。
1.使用一个网络请求工具进行某个页面的网络数据请求,在数据请求下来之后使用block回调,将请求下来的网络数据返回给某个页面使用。
2.点击自定义的UITableViewCell上的一个按钮,使用block回调,让我们知道点击的是哪个cell。
1.将block作为参数使用
2.将block作为属性使用
下面直接看图:
block如果作为参数使用,那么我们既可以在对象方法中使用block,也能在类方法中使用block。如果没有必要创建对象,那就直接使用类方法。
****本篇文章到这里就结束了,愿大家加班不多工资多,男同胞都有女朋友,女同胞都有男朋友。????***