Ответ 1
Образцы рисунков должны поддерживать прозрачность.
Попробуйте [self.dashedView setOpaque:NO]
У меня есть изображение, подготовленное с прозрачностью, например:
С двумя представлениями UI я настраиваю цвета фона так:
self.view.backgroundColor = [UIColor groupTableViewBackgroundColor];
self.dashedView.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"red_square.png"]];
Я ожидаю, что красный квадрат будет повторяться над UIView с сохраненной прозрачностью, но он был заполнен сплошным цветом следующим образом:
Я не понимаю, почему. Есть ли простой способ рисовать черепичное изображение с прозрачностью? Или мне нужно посмотреть на рисунки Core Graphics?
Образцы рисунков должны поддерживать прозрачность.
Попробуйте [self.dashedView setOpaque:NO]
все, что вам нужно сделать, установить opaque в NO после установки colorWithPatternImage.
self.dashedView.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"red_square.png"]];
self.dashedView.opaque = NO;
Яр, спасибо за отзывы.
Я обнаружил, что это происходит только на iOS 4.3.x, но не на iOS 5.0.x. Итак, на 4.3.x я должен был сделать то, что Яр id, и установить непрозрачность в НЕТ, а затем установить фоновое изображение, а затем установить значение YES.
UIButton* cancelButton = [UIButton buttonWithType:UIButtonTypeCustom];
cancelButton.opaque = YES; // fix for strange issue in 4.x, need to set YES, set bg color image, then set back to NO
cancelButton.backgroundColor = [UIColor colorWithPatternImage: cancelImage];
cancelButton.opaque = NO;