2013-07-23 1 views
1

Я сделал словарь цветов, используя функцию [UIColor colorWithRed: green: blue: alpha: ]. Однако, когда вызывается и отображается на экране, они не похожи на фактические цвета, а скорее напоминают основные функции [UIColor yellowColor]. Есть ли библиотека, которую я должен включить, чтобы показать фактические оттенки цветов RGB?UIColors с RGB, показывающими на экране основные цвета

Для справки, вот словарь я сделал:

colorStorage = [NSDictionary dictionaryWithObjectsAndKeys: 
        [UIColor colorWithRed:229.0 green:43.0 blue:80.0 alpha:1.0], @"Amaranth", 
        [UIColor colorWithRed:225 green:191 blue:0 alpha:1.0], @"Amber", 
        [UIColor colorWithRed:239 green:222 blue:205 alpha:1.0], @"Almond", 
        [UIColor colorWithRed:205 green:149 blue:117 alpha:1.0], @"Antique brass", 
        [UIColor colorWithRed:0 green:128 blue:0 alpha:1.0], @"Ao", 
        [UIColor colorWithRed:141 green:182 blue:0 alpha:1.0], @"Apple green", 
        [UIColor colorWithRed:251 green:206 blue:177 alpha:1.0], @"Apricot", 
        [UIColor colorWithRed:135.0 green:169.0 blue:107.0 alpha:1.0], @"Asparagus", 
        [UIColor colorWithRed:0 green:127 blue:255 alpha:1.0], @"Azure", 
        [UIColor colorWithRed:225 green:32 blue:82 alpha:1.0], @"Awesome", 
        [UIColor colorWithRed:178 green:190 blue:181 alpha:1.0], @"Ash grey", 
        [UIColor colorWithRed:110 green:127 blue:128 alpha:1.0], @"AutoMetalSaurus", nil]; 

И они называются такие:

for (id key in colorStorage){ 
     UIButton *colorButton = [UIButton buttonWithType:UIButtonTypeCustom]; 
     [colorButton setTitle:key forState:UIControlStateNormal]; 

     //additional code here... 

     colorButton.backgroundColor = [colorStorage objectForKey:key]; 
     colorButton.tag = i; 
     [self.colorPicker addSubview:colorButton]; 
     i = i + 1; 
    } 
+3

Цвета должны быть от 0,0 до 1,0, как и альфа. Разделите каждый на 255.0. – rmaddy

+1

Возможный дубликат [UIColor всегда дает белый цвет, когда настройки синие) (http://stackoverflow.com/questions/11258303/uicolor-always-gives-white-when-settings-blue) – rmaddy

ответ

3

Как указывалось выше, всегда делят значения RGB на 255,0. Я тоже сделал эту ошибку при первом обучении.

colorStorage = [NSDictionary dictionaryWithObjectsAndKeys: 
       [UIColor colorWithRed:229.0/255.0 green:43.0/255.0 blue:80.0/255.0 alpha:1.0], @"Amaranth", 
       [UIColor colorWithRed:225.0/255.0 green:191.0/255.0 blue:0.0/255.0 alpha:1.0], @"Amber", 
       [UIColor colorWithRed:239.0/255.0 green:222.0/255.0 blue:205.0/255.0 alpha:1.0], @"Almond", 
       [UIColor colorWithRed:205.0/255.0 green:149.0/255.0 blue:117.0/255.0 alpha:1.0], @"Antique brass", 
       [UIColor colorWithRed:0.0/255.0 green:128.0/255.0 blue:0.0/255.0 alpha:1.0], @"Ao", 
       [UIColor colorWithRed:141.0/255.0 green:182.0/255.0 blue:0.0/255.0 alpha:1.0], @"Apple green", 
       [UIColor colorWithRed:251.0/255.0 green:206.0/255.0 blue:177.0/255.0 alpha:1.0], @"Apricot", 
       [UIColor colorWithRed:135.0/255.0 green:169.0/255.0 blue:107.0/255.0 alpha:1.0], @"Asparagus", 
       [UIColor colorWithRed:0.0/255.0 green:127.0/255.0 blue:255.0/255.0 alpha:1.0], @"Azure", 
       [UIColor colorWithRed:225.0/255.0 green:32.0/255.0 blue:82.0/255.0 alpha:1.0], @"Awesome", 
       [UIColor colorWithRed:178.0/255.0 green:190.0/255.0 blue:181.0/255.0 alpha:1.0], @"Ash grey", 
       [UIColor colorWithRed:110.0/255.0 green:127.0/255.0 blue:128.0/255.0 alpha:1.0], @"AutoMetalSaurus", nil]; 
+0

Это сделало трюк! Спасибо за тотализацию во всех этих 255.0s! – daspianist

Смежные вопросы