`
iaiai
  • 浏览: 2196471 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Objective-C中的Block回调模式

 
阅读更多
如果 读者之前用过SSH框架的话,看到OC中的Block回调,会感觉非常的亲切,和Java中的接口回调像极了。还是那句话,上些Block的回调代码最为直接。下面的demo是根据笔者的理解,自己设计的一个小小的Block回调的 demo,难免会有不足之处,还望批评指正,尊重原创,转载请注明出处。

controller中调用httpUtil的方法:
[HttpUtil get:@"" success:^(NSString* value){
        NSLog(@"value: %@", value);
    }];


HttpUtil.h:
//定义Block块类型的变量
typedef void (^BlockType) (NSString* value);

@interface HttpUtil : NSObject

+(void)get:(NSString*)url success:(BlockType) success;

@end


HttpUtil.m:
@implementation HttpUtil

+(void)get:(NSString*)url success:(BlockType)success{
    ...
    [manager GET:@"url" parameters:nil success:^(AFHTTPRequestOperation *operation, id responseObject) {
        success([NSString stringWithFormat:@"%@",responseObject]);
    } failure:^(AFHTTPRequestOperation *operation, NSError *error) {
        NSLog(@"Error: %@", error);
    }];
}

@end


这是我写的最简单的一个回调方法,希望大家能看懂
分享到:
评论

相关推荐

    Objective-c利用协议实现回调函数

    在Objective-C中,我们可以通过代理(Delegate)模式或者Block来实现回调。本例中,我们将关注使用协议实现回调。 1. **定义协议**:首先,我们需要定义一个协议,声明回调的方法。例如,我们可以创建一个名为`...

    objective-c编程 第2版=objective-c program 2nd edition_13889311

    7. **Block和GCD**:Block是Objective-C中的匿名函数,可以用于简化回调和并发处理。Grand Central Dispatch(GCD)是Apple提供的多线程解决方案,书中可能讲解如何利用它们优化程序性能。 8. **Cocoa Touch和App...

    Effective Objective-C 2.0

    Block在多线程编程和提供回调功能时非常有用。 6. 关联对象(Associated Objects):在Objective-C中,可以通过运行时特性,动态地为类添加属性,这种机制被称为关联对象。这意味着开发者可以在不改变类定义的情况...

    Objective-C基础教程(Learn Objective-C)随书源码下载

    它们提供了一种灵活的方式来处理回调和并发。 7. **Foundation框架**: Foundation框架是Objective-C的基础,包含了各种数据类型、集合类、线程管理、内存管理等核心功能。例如NSArray、NSDictionary、NSString等...

    Swift 中的闭包和 Objective-C 中的Block

    虽然Objective-C的Block语法稍显复杂,但它在处理异步操作和GCD(Grand Central Dispatch)时特别有用,因为Block可以很好地捕获并保留上下文中的状态,这对于回调函数或并发任务是必不可少的。 总的来说,Swift的...

    Objective-C2.0程序设计习题官方答案

    5. ** Blocks**:Objective-C2.0引入了Blocks,一种内联函数或闭包的表示方式,常用于异步操作或作为回调函数。理解Block的定义、存储类型以及如何在代码中使用。 6. **内存管理**:Objective-C使用引用计数(ARC,...

    从 C++ 到 Objective-C 快速精通

    5. Blocks(Block表达式):Objective-C的Blocks是一种闭包实现,它可以捕获并存储局部变量,常用于异步操作或回调。C++11也引入了类似的概念,但Objective-C的Block在语法和使用上有所不同。 6. Foundation框架:...

    [Objective-C编程(第6版)]Programming in Objective-C

    - **块(Block)**:块是一种匿名函数,在Objective-C中常用于回调函数或者异步操作的完成处理。 #### 应用场景 - **iOS应用开发**:Objective-C是开发iOS应用的主要语言之一,尤其适合于那些需要高性能和复杂用户...

    Objective-C高级编程†

    Block常用于异步操作的回调,如网络请求或GCD(Grand Central Dispatch)。 Foundation框架是Objective-C的基础,提供了许多核心数据类型和常用类,如NSString、NSArray、NSDictionary等。Core Foundation则提供了...

    Objective-C示例代码1

    10. **Block(闭包)**:Objective-C支持块语法,`FractionDemo`可能包含使用块作为参数或返回值的方法,用于实现异步操作或回调。 这些只是Objective-C编程中的一部分核心概念,实际的`FractionDemo`代码会根据...

    iphone(Objective-C)

    Objective-C还有Block(闭包)的概念,它可以捕获并存储定义时的局部变量,常用于异步操作或作为回调函数。Block语法简洁,易于理解,大大提高了代码的可读性和灵活性。 在开发工具方面,Xcode是苹果官方推荐的集成...

    objective-c基础教程(附源代码)

    Block是Objective-C中的匿名函数,可以捕获和存储其所在作用域内的变量。它们在处理回调、排序或过滤数组等任务时非常有用。 Foundation框架是Objective-C的基础,包含了大量常用的数据类型和工具,如NSArray、...

    0基础iOS开发学习计划Objective-c语言内容概述.doc

    - **Block和Selector**:Block类似于C语言中的匿名函数,可以用来实现回调。Selector则用于指明方法调用。 - **文件和目录操作**:Objective-C提供了丰富的API来操作文件和目录,如`NSFileManager`和`NSFileHandle`...

    objective-c学习资料

    Block常用于异步操作,回调函数,或者作为参数传递。 7. **内存管理**: 在Objective-C中,内存管理主要依赖于ARC(Automatic Reference Counting),它自动处理对象的引用计数。了解如何正确使用`strong`、`weak`...

    Objective-C

    - **块(Block)**:Objective-C中的闭包实现,可以作为函数参数和返回值,常用于异步操作和回调。 - **消息传递**:Objective-C的对象通过发送消息来调用方法,这与C++的成员函数调用不同。 - **垃圾回收与自动引用...

    Effective Objective-C 2.0&Obj;-C高级编程

    - Block是Objective-C中的闭包,可以捕获和存储上下文中的变量,常用于异步编程和回调函数。 5. **KVC(Key-Value Coding)和KVO(Key-Value Observing)**: - KVC提供了一种间接访问对象属性的方式,无需直接...

    objective-c 编程

    Objective-C是由C语言发展而来,融入了Smalltalk的面向对象特性,因此它结合了C的简洁性和面向对象的灵活性。 1. **面向对象编程基础**: Objective-C的核心是它的面向对象特性,包括类(Class)、对象(Object)...

    Objective-C基础教程.rar

    块是Objective-C中的一种闭包实现,它可以捕获和存储其所在上下文的变量,常用于异步操作或作为回调。Objective-C的动态性使得在运行时检查和修改对象的类型成为可能,提供了强大的灵活性。 “开发工具介绍”部分...

    Objective-C.2.0程序设计(中文版) 高清PDF

    Block允许在代码中定义可复用的匿名函数,使得处理回调和并发更加方便。ARC则自动化了内存管理,减少了手动内存管理导致的错误,提高了代码的可靠性和性能。 本书可能会涵盖以下关键主题: 1. **基础语法**:讲解...

    Objective -C 基础教程 的代码

    Block是Objective-C中的匿名函数,常用于回调和并发处理。它能够捕获和存储执行环境中的变量。 9. **内存管理**: Objective-C 采用引用计数(ARC,Automatic Reference Counting)来管理内存。当对象的引用计数...

Global site tag (gtag.js) - Google Analytics