2

UITableViewCell に次のコードがあります。

  [self.layer setBorderColor:[UIColor blackColor].CGColor];
    [self.layer setShadowRadius:10.0];
    [self.layer setCornerRadius:5.0];
    UIBezierPath *path = [UIBezierPath bezierPathWithRoundedRect:self.bounds byRoundingCorners:UIRectCornerAllCorners cornerRadii:CGSizeMake(5.0, 5.0)];
    [self.layer setShadowPath:path.CGPath];
    [self.layer setShouldRasterize:YES];
    [self.layer setRasterizationScale:[UIScreen mainScreen].scale];

インストゥルメントを実行して画面外の色を設定すると、黄色にレンダリングされ、セルが黄色になります。shouldRasterize を削除すると、セルが黄色に変わりません。これを改善する方法は何ですか?これにより、スクロールのパフォーマンスが大幅に低下します。いくつかの影が入った丸みを帯びた角を設定しようとしています。

4

1 に答える 1

0

私はこのような丸みを帯びた角をやっています:

    self.layer.shadowColor = [UIColor grayColor].CGColor;
    self.layer.shadowOffset = CGSizeMake(0.05, 0.05);
    self.layer.shadowOpacity = 10;
    self.layer.shadowRadius = 1.5;
    self.layer.masksToBounds = NO;
    self.layer.shouldRasterize = YES;
    [self.layer setBorderColor: [[UIColor whiteColor] CGColor]];
    [self.layer setBorderWidth: 5.0];
于 2012-12-08T04:49:32.743 に答える