у меня есть:
boardValue = [NSNumber numberWithInteger: 2]; NSDictionary * dict = [NSDictionary dictionaryWithValuesForKeys: @"sample", @"word", boardValue , @"value", nil];
Это очень похоже на следующий пример:
NSDictionary *dict = [NSDictionary dictionaryWithObjectsAndKeys: @"value1", @"key1", @"value2", @"key2", nil];
из документации Apple по адресу: http://developer.apple.com/library/mac/#documentation/Cocoa/Reference/Foundation/Classes/nsdictionary_Class/Reference/Reference.html
Я получаю сообщение об ошибке "слишком много аргументов для вызова метода, ожидайте 1, есть 5". В чем проблема?
dictionaryWithValuesForKeys: принимает массив в качестве аргумента, а не список переменных аргументов.
dictionaryWithValuesForKeys:
(Также я считаю, что это метод экземпляра, а не метод класса, поэтому [NSDictionarydictionaryWithValuesForKeys: args] `не будет работать.)
Обратите внимание на ваш код по сравнению с документацией.Вы хотите позвонить ...
boardValue = [NSNumber numberWithInteger: 2]; NSDictionary * dict = [NSDictionary dictionaryWithObjectsAndKeys: @"sample", @"word", boardValue , @"value", nil];