2016-08-17 44 views
2

我试图淡出我的文本的顶部作为文本熄灭屏幕。我希望它看起来有点像星球大战积分,但保持其宽度。我一直在处理这段代码,但它只是将我的屏幕变成黑屏。TextView。淡出文字在顶部,而在屏幕类似星球大战

if let containerView = textView.superview { 
     let gradient = CAGradientLayer(layer: containerView.layer) 
     gradient.frame = containerView.bounds 
     gradient.colors = [UIColor.clearColor().CGColor, UIColor.blueColor().CGColor] 
     gradient.startPoint = CGPoint(x: 0.0, y: 1.0) 
     gradient.endPoint = CGPoint(x: 0.0, y: 0.85) 
     containerView.layer.mask = gradient 
    } 
+3

你尝试过使用武力吗? –

回答

1

我已经实现了与一个第三方库相同。

请试试这个。 :https://github.com/somtd/SWScrollView

它正在改变滚动视图内的TextView这里是相同的代码:我希望你想类似的事情

- (void)setupScrollPerspective 
{ 
    CATransform3D transform = CATransform3DIdentity; 
    //z distance 
    float distance = [[UIScreen mainScreen] bounds].size.height; 
    float ratio = [[UIScreen mainScreen] bounds].size.height/[[UIScreen mainScreen] bounds].size.height; 
    transform.m34 = - ratio/distance; 
    transform = CATransform3DRotate(transform, 60.0f * M_PI/180.0f, 1.f, 0.0f, 0.0f); 
    self.layer.transform = transform; 
    self.layer.zPosition = distance * ratio; 
    self.layer.position = CGPointMake([[UIScreen mainScreen] bounds].size.width/2, 
             [[UIScreen mainScreen] bounds].size.height/3); 
} 

enter image description here

.....

+0

我只是想顶部淡出。 – user1079052