我有UITextView
一个可折叠的TableViewCell
. 在UITextView
我想要CAGradientLayer
淡出上面的底部文本。
我用它做了UIView
一个UITextView
。这一切都在单元格中
我不知道如何在单元格或视图控制器中设置代码。
我的测试代码来自 Github:Ewan Davids 的 Fun with Mask。
[self createGradientMask];
我应该把(void)
方法放在哪里?在TableViewCell
或ViewController
?
- (void)createGradientMask
{
//creating our gradient mask
CAGradientLayer *maskLayer = [CAGradientLayer layer];
//this is the anchor point for our gradient, in our case top left. setting it in the middle (.5, .5) will produce a radial gradient. our startPoint and endPoints are based off the anchorPoint
maskLayer.anchorPo = CGPointZero;
//The line between these two points is the line our gradient uses as a guide
//starts in bottom left
maskLayer.startPoint = CGPointMake(0.0f, 1.0f);
//ends in top right
maskLayer.endPoint = CGPointMake(1.f, 0.0f);
//setting our colors - since this is a mask the color itself is irrelevant - all that matters is the alpha. A clear color will completely hide the layer we're masking, an alpha of 1.0 will completely show the masked view.
UIColor *outerColor = [UIColor colorWithWhite:1.0 alpha:0.0];
UIColor *innerColor = [UIColor colorWithWhite:1.0 alpha:1.0];
//an array of colors that dictatates the gradient(s)
maskLayer.colors = @[(id)outerColor.CGColor, (id)outerColor.CGColor, (id)innerColor.CGColor, (id)innerColor.CGColor];
//these are percentage points along the line defined by our startPoint and endPoint and correspond to our colors array. The gradient will shift between the colors between these percentage points.
maskLayer.locations = @[@0.0, @0.15, @0.5, @1.0f];
maskLayer.bounds = CGRectMake(0, 0, CGRectGetWidth(self.view.bounds),
CGRectGetHeight(self.view.bounds));
self.underTextView.layer.mask = maskLayer;
}
- 在
TableViewCell
我不认识的view
财产。 - 在
ViewController
我不认识的UITextView property
,
添加了 QuartzCore.framework。