相关疑难解决方法(0)

iOS 7.0中的水平CAGradientLayer

在我的应用程序中,我使用a CAGradientLayer来设置我的单元格的背景,这样:

retValue = [tableView dequeueReusableCellWithIdentifier:@"Cells" forIndexPath:indexPath];
UIView *bgColorView = [[UIView alloc] init];
bgColorView.backgroundColor = [UIColor blueColor];
bgColorView.layer.masksToBounds = YES;
id startColor = (id)[[UIColor colorWithWhite:0.75 alpha:1] CGColor];
id endColor = (id)[[UIColor blueColor] CGColor];
CAGradientLayer* gradientLayer = [CAGradientLayer layer];
gradientLayer.frame = retValue.contentView.bounds;
gradientLayer.colors = @[startColor,startColor,endColor,endColor];
gradientLayer.locations = @[[NSNumber numberWithFloat:0],
    [NSNumber numberWithFloat:0.95],
    [NSNumber numberWithFloat:0.95],
    [NSNumber numberWithFloat:1]];
[gradientLayer setStartPoint:CGPointMake(0,0.5)];
[gradientLayer setEndPoint:CGPointMake(1,0.5)];
[bgColorView.layer addSublayer:gradientLayer];
retValue.selectedBackgroundView = bgColorView;
Run Code Online (Sandbox Code Playgroud)

(此代码在里面- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath)

它在iOS 6上工作正常但在iOS 7上不起作用,在新的iOS中,渐变始终是垂直的(忽略startPoint和endPoint)

有没有人在同一个问题上遇到过?

谢谢,

佩里

ios cagradientlayer

21
推荐指数
2
解决办法
1万
查看次数

标签 统计

cagradientlayer ×1

ios ×1