Вместо использования словаря, почему бы не использовать объект?
Пример ниже показывает, что на самом деле не так много дополнительной работы.Кроме того, вы получаете преимущества фактического использования объектов.
Настройка объекта
@interface MyClass : NSObject
@property (nonatomic, strong) NSString *myString;
@property (nonatomic, assign) CGFloat myFloat;
@end
@implementation MyClass
@synthesize myString = _myString;
@synthesize myFloat = _myFloat;
@end
Использование объекта
MyClass *myClass = [[MyClass alloc] init];
// Set
myClass.myString = @"aa";
myClass.myFloat = 12.0f;
// Get
NSString *myString = myClass.myString
CGFloat myFloat = myClass.myFloat;
Набор NSDictionaryup
.h
extern NSString * const MYClassKeyMyString;
extern NSString * const MYClassKeyMyFloat;
.m
NSString * const MYClassKeyMyString = @"MYClassKeyMyString";
NSString * const MYClassKeyMyFloat = @"MYClassKeyMyFloat";
NSDictionary use
NSDictionary *myDict = [[NSMutableDictionary alloc] init];
// Set
[myDict setObject:@"aa" forKey:MYClassKeyMyString];
[myDict setObject:[NSNumber numberWithFloat:12.0f] forKey:MYClassKeyMyFloat];
// Get
NSString *myString = [myDict objectForKey:MYClassKeyMyString];
CGFloat myFloat = [[myDict objectForKey:MYClassKeyMyFloat] floatValue];