gpt4 book ai didi

ios - 从 NSObject 调用函数

转载 作者:行者123 更新时间:2023-11-28 19:06:17 25 4
gpt4 key购买 nike

我正在开发 iOS 应用程序。我创建了一个从服务器提取数据的类。但是,当请求接收到数据时,我需要在创建类实例的 View Controller 中调用一个方法。

请求.m

- (id)initWithDictionary:(NSMutableDictionary *)dict
{
if (self = [super init]) {
[[API sharedInstance] commandWithParams:dict onCompletion:^(NSDictionary *json) {
for (NSString* key in json) {
//call method in view controller
}];
}
return self;
}

在一些 View Controller 中:

//how I submit the request
Request *myRequest = [[Request alloc] initWithDictionary:myDict];

//the method I need to call onCompletion:
- (void)receivedRequest{}

如果有人能在现场告诉我如何做到这一点,我将不胜感激!

最佳答案

这是委托(delegate)设计模式的教科书应用程序:

设置协议(protocol)。我们称它为 requestProtocol。

在请求协议(protocol)中定义 Request 对象需要调用的方法。

为您的 Request 类提供一个委托(delegate)属性。设置委托(delegate)以符合您的请求协议(protocol)。

当您的 View Controller 创建一个请求对象时,将其设置为委托(delegate)。

(这意味着您的 View Controller 将需要符合您的请求协议(protocol))

在您的 Request 对象中,当您开始解析 JSON 键时,调用委托(delegate)的 receivedRequest 方法。

关于ios - 从 NSObject 调用函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20294875/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com