我正在开发一个需要在UITextView中实现中心渐变的项目。它必须像附加图像。我不能在UITextView的上部使用任何图像,因为我想在UITextView中进行用户交互。请提供您的建议。感谢
答案 0 :(得分:4)
如果在UITextView上应用CAGRradient Layer并设置[txtView.layer setMask:gradient],这将产生问题,而滚动意味着渐变层将滚动。 要克服此问题,必须使用UiView作为textView的容器视图。首先添加容器视图,然后在容器视图中将文本视图添加为子视图。然后使用这段代码来拯救我的生命。
CAGradientLayer gradient = [CAGradientLayer layer];
gradient.frame = view_bottomMenu.bounds;
gradient.colors = [NSArray arrayWithObjects:(id)[[[UIColor blackColor colorWithAlphaComponent:0.2] CGColor],(id)[[[UIColor blackColor] colorWithAlphaComponent:0.3] CGColor],(id)[[[UIColor blackColor] colorWithAlphaComponent:0.3] CGColor],(id)[[[UIColor blackColor] colorWithAlphaComponent:0.3] CGColor], (id)[[[UIColor clearColor] colorWithAlphaComponent:1.0] CGColor], (id)[[[UIColor blackColor] colorWithAlphaComponent:0.3] CGColor],(id)[[[UIColor blackColor] colorWithAlphaComponent:0.3] CGColor],(id)[[[UIColor blackColor] colorWithAlphaComponent:0.3] CGColor],
(id)[[[UIColor blackColor] colorWithAlphaComponent:0.2] CGColor], nil];
gradient.startPoint = CGPointMake(0.0f,0.0f);
gradient.endPoint = CGPointMake(0.0f, 1.0f);
[view_bottomMenu.layer setMask:gradient];
其中view_bottomMenu是UIView作为容器视图。我的输出。
答案 1 :(得分:0)
要实现此类效果,您必须在UItextView
上实施屏蔽。请检查
Applying CAGradient mask layer to UITextView。
这显示了如何更改颜色并淡化UITextView
的某些部分。