Remove @“” from NSString or typecast NSString into variable name

后端 未结 4 489
星月不相逢
星月不相逢 2021-01-25 08:56

I read a NSString from file and then I want to #define this as a UIColor so I can quickly change color\'s.

I want something to work like so:

#define GRAY         


        
4条回答
  •  栀梦
    栀梦 (楼主)
    2021-01-25 09:44

    Daniel's answer is probably the best. Since he hasn't provided any code, this is one implementation:

    -(UIColor*) colorFromString: (NSString*) colorName
    {
        static NSDictionary colors = nil;
        if (colors == nil)
        {
            colors = [NSDictionary dictionaryWithObjectsAndKeys: 
                                       [UIColor darkGreyColor], @"GRAY",
                                       [UIColor blueColor], @"BLUE",
                                       // etc
                                       nil];
            [colors retain];
        }
        return [colors objectForKey: colorName];
    }
    

提交回复
热议问题