iOS Block 页面传值】的更多相关文章

为什么80%的码农都做不了架构师?>>>   直接上代码 1.定义block @interface TopTypeCollectionView : UIView @property (nonatomic, strong) NSArray *typeItemArray;//数据源 typedef void(^Blo)(NSString *s1 , UIColor *c);//定义block名字 @property (nonatomic , copy) Blo block;//声明 /**…
我以自己项目中的一个模块为例,首先有两个页面,第一个页面为显示城市页面,第二个页面为选择要使用block传的值(城市名). 第一个页面中的显示控件: //自定义左部定位视图 self.locView = [[LocationView alloc] initWithFrame:CGRectMake(0, 0, SCREENWIDTH/2-35, 25)]; self.locView.imgView.image = [UIImage imageNamed:@"around"]; UITap…
1.在需要像上一个界面传值的.h 文件实现代理方法 @property (nonatomic, copy) void(^isOpenHandler)(BOOL) ; 2.在执行操作的时候需要江操作的结果反向传值给上个界面的时候调用Block if (self.isOpenHandler) { self.isOpenHandler(YES); } 3.在第一个视图控制器中 Push 的时候调用Block   接受回传回来的值 WM.isOpenHandler = ^(BOOL isopen){ i…
// 要实现单例传值,那就必须得新建一个类做为单例 提供创建该类对象的类方法(因为是要在alloc开辟内存空间后赋值).所有在.h文件中声明该方法 + (instancetype)defaultUIImageView; 实现该方法 前提得有一个静态全局变量来保存该类对象的指针 // 静态全局变量 static DefaultValueViewController *singleton; // 提供方法创建单例对象 #pragma mark - defaultUIViewController +…
(1)声明block变量并设置返回值类型 typedef int(^MYBlock)(NSString *); @property (nonatomic, copy) MYBlock block; (2)调用Block方法(发送),并接收返回值 int i = self.block(@"123”); NSLog(@"%d",i); (3)调用Block方法(接收),并接收返回值 self.ceshi.block =  ^ (NSString *string) { NSLog(…
普遍传值方式如下: 1.委托delegate方式: 2.通知notification方式: 3.block方式: 4.UserDefault或者文件方式: 5.单例模式方式: 6.通过设置属性,实现页面间传值 着重说一下block方式: block介绍:http://blog.csdn.net/totogo2010/article/details/7839061 链接一篇描述block回调挺有意思的文章: http://blog.csdn.net/mobanchengshuang/article…
一.简述 在iOS开发过程中,页面跳转时在页面之间进行数据传递是很常见的事情,我们称这个过程为页面传值.页面跳转过程中,从主页面跳转到子页面的数据传递称之为正向传值:反之,从子页面返回主页面时的数据传递称之为反向传值. 目前我所了解和掌握的传值方式有: 属性传值 单例传值 NSUserDefaults传值 代理传值 block传值 通知传值 KVO/KVC  iOS----KVC和KVO 详解 二.页面传值的详解 2.0 准备工作 为了实现页面之间传值,我们需要准备两个页面,代码结构如下图所示.…
在上篇博客 <iOS Block简介> 中,侧重解析了 iOS Block的概念等,本文将侧重于它们在开发中的应用. Block是iOS4.0+ 和Mac OS X 10.6+ 引进的对C语言的扩展,用来实现匿名函数的特性.用维基百科的话来说,Block是Apple Inc.为C.C++以及Objective-C添加的特性,使得这些语言可以用类lambda表达式的语法来创建闭包.关于闭包,一句话解释简洁明了:闭包就是能够读取其它函数内部变量的函数. 在iOS开发中,Block有很多方面的用途,…
// AppDelegate.m // 页面传值总结 // // Created by qianfeng on 15/6/13. // Copyright (c) 2015年 qianfeng. All rights reserved. // #import "AppDelegate.h" #import "ViewController.h" @interface AppDelegate () @end @implementation AppDelegate - (…
通用的是用代理的方式实现页面传值,但是有时候利用其它方式也可以很巧妙的解决问题,页面传值一共有4种方式: 1.使用全局变量, SharedApplication,定义一个变量来传递. 2.使用文件,或者NSUserdefault来传递 3.通过一个单例的class来传递 4.通过Delegate来传递. 一:定义 AppDelegate.h @property (nonatomic, retain) DetailViewController *detailViewController; @pro…