iPhone Может ли подпредставление быть прозрачным? - PullRequest
0 голосов
/ 12 марта 2012

У меня есть основной вид, и я добавил к нему подпредставление.Я установил полупрозрачный фон подпредставления, но подпредставление рисуется сплошным цветом.Я даже пытался установить для opaque значение NO.

detailsView.opaque = NO;
detailsView.backgroundColor = UIColorMakeRGBA(0, 0, 100, 100);

Я могу сделать vsubview прозрачным с помощью свойства alpha (но все вещи в subview также будут прозрачными), но я действительно хочу установить цвет фонабыть полупрозрачным.

Ответы [ 3 ]

2 голосов
/ 12 марта 2012

Установите alpha на желаемое значение в colorWithRed:green:blue:alpha method

detailsView.backgroundColor = [UIColor colorWithRed:0/255.0f 
                                              green:30/255.0f 
                                               blue:160/255.0f 
                                              alpha:0.5f];
1 голос
/ 12 марта 2012

Полагаю, UIColorMakeRGBA - это реализованная вами функция.В этом случае, я уверен, это выглядит так:

#define UIColorMakeRGBA(redValue, greenValue, blueValue, alphaValue) [UIColor colorWithRed:(redValue)/255.0f green:(greenValue)/255.0f blue:(blueValue)/255.0f alpha:(alphaValue)]

Обратите внимание, что альфа не делится на 255.0, поэтому вам следует использовать значение между 0.0 и 1.0 для этого параметраа не 100.Если вы используете 100, вы получите цвет с альфа, равный 1.0.

detailsView.backgroundColor = UIColorMakeRGBA(0, 0, 100, 0.5f);
1 голос
/ 12 марта 2012

Я не знаю функцию UIColorMakeRGBA, но мне кажется, что вы создаете полностью синий цвет с альфа-1, поэтому он не должен быть прозрачным.Попробуйте установить цветовую линию фона на

detailsView.backgroundColor = UIColorMakeRGBA(0, 0, 100, 50);

В качестве альтернативы просто используйте [[UIColor blueColor] colorWithAlphaComponent:0.5f];

...