У меня есть собственный класс UITableViewCell
, и в этом я переопределил метод drawRect
для создания хорошего градиентного фона. Тем не менее, мне нужен только градиент для одного случая, и я переключаюсь с помощью инструкции if
.drawLinearGradient(), но для сплошного цвета
Есть ли лучший способ написать это?
- (void) drawRect:(CGRect)rect {
// Setup gradient
CGContextRef context = UIGraphicsGetCurrentContext();
CGColorRef topColor = [UIColor colorWithRed:1.0 green:1.0 blue:1.0 alpha:1.0].CGColor;
CGColorRef bottomColor = [UIColor colorWithRed:240.0/255.0 green:240.0/255.0 blue:240.0/255.0 alpha:1.0].CGColor;
CGRect cellRect = self.bounds;
if (!isDescription)
drawLinearGradient(context, cellRect, topColor, bottomColor);
else
drawLinearGradient(context, cellRect, bottomColor, bottomColor);
}
Кажется, глупо рисовать градиент, когда я хочу сплошное. Какие-либо предложения?
Были ли у вас взглянуть на справочный материал Quartz2D компании Apple, чтобы найти альтернативу? –
Спасибо - я не был уверен, где в справочном материале посмотреть, как это первый код кварца, который я сделал. – squarefrog