在Obj C中没有调用类方法

时间:2017-09-02 17:20:49

标签: ios objective-c class methods

这是我调用类方法的地方。在NSURLRequest完成后进行调用。所有的价值都在那里,没有什么是零

[MemberInfo SetMemberInfo:memberId groupId:groupId token:token withContext:_context];

这是在核心数据“MemberInfo + CoreDataProperties.m”生成的类中实现的方法

+ (bool)SetMemberInfo:(NSString *)memberId groupId:(NSString *)groupId token:(NSString *)token withContext:(NSManagedObjectContext *)context
{
    NSManagedObject *memberInfoObject = [NSEntityDescription insertNewObjectForEntityForName:@"MemberInfo" inManagedObjectContext:context];
    [memberInfoObject setValue:memberId forKey:@"memberId"];
    [memberInfoObject setValue:groupId forKey:@"groupId"];
    [memberInfoObject setValue:token forKey:@"token"];

    NSError *error = nil;
    if (![context save:&error])
    {
        return false;
    }

    return true;
}

我没有错误,日志中没有任何内容可以解释原因。但这种类方法'SetMemberInfo'永远不会被击中。有线索吗?

编辑** 完全代码,我称之为方法

NSURLSessionDataTask *postDataTask = [session dataTaskWithRequest:request completionHandler:^(NSData * _Nullable data, NSURLResponse * _Nullable response, NSError * _Nullable error) {
    if (error == nil)
    {
        NSHTTPURLResponse *httpResponse = (NSHTTPURLResponse *)response;
        if ([httpResponse statusCode] == 200)
        {
            id object = [NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingAllowFragments error:&error];

            if ([object isKindOfClass:[NSDictionary class]] && error == nil)
            {
                NSString *groupId = _tfGroupId.text;
                NSString *memberId = _tfMemberId.text;
                NSString *token = [object valueForKey:@"token"];

                [MemberInfo SetMemberInfo:memberId groupId:groupId token:token withContext:_context];
            }
        }
    }

}];

[postDataTask resume];

1 个答案:

答案 0 :(得分:0)

必须与我拥有类方法的类有关。我将它移动到另一个类,它现在进行调用。