问题标签 [cagradientlayer]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
iphone - CAShapeLayer 上的 CAGradientLayer SetMask 使应用程序崩溃
使用来自许多 伟人的 示例代码,我能够使用 CAShapeLayer 制作复杂的形状,并且使用子类 UIView 没有问题:
这段代码效果很好,现在尝试在形状上添加一个 CAGradientLayer 和蒙版,我一直在崩溃,特别是:
QuartzCore CA::Layer::ensure_transaction_recursively(CA::Transaction*):
这是梯度代码,请注意,这是取自其他关于 SO 的工作示例:
我试图调试和研究这个问题,并且通常怀疑 UIColors 不是 CGColors 或 (__bridge id) 不正确,我使用两个位置作为渐变,只有 2 种颜色,而且我已经尝试了几十个不同版本的:有或没有 setNeeds 显示,属性与本地声明,子类内部和外部的渐变层,在插入子层时仍然给我同样的崩溃。
当我取出 setMask: 调用时,它不会崩溃,只会用渐变填充整个帧。
这似乎我只是错过了一些次要或明显的事情。请注意,使用 iOS 6 和 ARC——希望继续使用 CAShapeLayer 和 CAGradientLayer,因为它使动画更容易一些(这是最终目标)。
iphone - 使用 UIBezierPath 中的 CAShapeLayer 屏蔽时,CAGradientLayer 出现意外输出
我正在使用来自Palimondo的示例代码:这是学习如何将 CAGradientLayer 屏蔽到 CAShapeLayers 上的出色代码。输出如下:
现在我正在尝试创建此图像:
使用 PaintCode,我能够获取所有 UIBezierPath 和渐变颜色并停止并将它们放入多个数组中,并且基本上遍历每个将其添加到新的 CAShapeLayer 和 CAGradientLayer 中,如下所示:
目标是拥有 16 个单独的 CAGradientLayer,我可以使用 CoreAnimation 对其进行动画处理以创建一种“旋转”效果(我可以将 PaintCode 的输出放入 drawRect 中,它可以工作,问题是我被告知我会通过 CoreGraphics 对颜色或渐变进行动画处理比将它们放置在图层中要困难得多)。
然后,输出如下:
经过 100 次迭代之后,在此之前,我尝试换掉[UIColor clearColor]
for whiteColor
(这不是示例代码所需的),然后输出:
你可以看到只有几个渐变,我相信这whiteColor
会干扰 CAGradientLayer。
我知道我一定错过了一些非常微妙的东西,但我似乎看不到它。
为什么在示例代码中,我们能够使用clearColor
并适当地显示渐变,但使用clearColor
我的 UIBezierPath 附加到我的 CAShapeLayer 时,渐变会中断?
一位朋友提到,另一种解决方案是使用 3 个渐变圆并基本上在蒙版形状上同心旋转它们,从而产生错觉,但是我不知道如何才能做到这一点。
ios - 带角度的 CAGradientLayer
我正在绘制CGPath
不是矩形或正方形的,并添加CGPath
到CAShapeLayer
. 这是从使用中CAShapeLayer
得到的框架。所以它将是矩形或正方形。现在我想将渐变颜色设置为图层,但我的路径不是矩形或正方形,因此它不会在整体上均匀分布渐变颜色。有什么方法可以将渐变颜色设置为 CGPath,或者如何设置带角度的渐变颜色?CGPath
CGPathGetBoundingBox(path)
CGPath
请参阅屏幕截图以了解情况。这里白色表示框架CGPath
和绿色,即我们绘制的CGPath
。在底部CGPath
您可以看到白色渐变颜色,它在CGPath
.
ios - 如何从它的超级层中删除 CAGradientLayer
我将图层添加到我的视图中:
然后它似乎并没有被删除,即使我在超级层上调用needsDisplay :
我怎样才能删除它?
ios - UITextField 中的渐变文本
我正在使用 CAGradientLayer 为文本字段制作渐变背景。看起来像这样
我想在文本上使用渐变而不是背景。如何在 UITextField 中制作渐变文本?
我用来在图像中制作渐变的代码
ios - layer.mask 渐变在 iOS7 中为 Solid
下一个代码在 ios6 中运行良好。它应该对视图应用顶部和底部的内部 alpha 渐变:
但!如果我在 iOS7 中运行此代码,则渐变的“透明”部分不是很好的混合 alpha 渐变,而是纯白色。
ios - iOS 7.0 中的水平 CAGradientLayer
在我的应用程序中,我使用 aCAGradientLayer
来设置单元格的背景,以这种方式:
(这段代码在里面- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
)
它在 iOS 6 上工作正常,但在 iOS 7 上不起作用,在新的 iOS 中,渐变始终是垂直的(忽略 startPoint 和 endPoint)
有没有人遇到过同样的问题?
谢谢,
佩里
ios - 为什么我不能在 ARC 中使用自定义颜色创建 CAGradientLayer?
在我的表格视图控制器的以下代码中,如果我使用“库存”颜色,[UIColor blueColor]
它可以正常工作,但是如果我尝试使用 RGBA 值创建自定义颜色,它会严重失败并且除了纯黑色之外不会绘制任何东西。
这是因为 ARC 在 CGColorRef 可以使用之前释放了它吗?我怎样才能让它与自定义颜色一起使用?
uitableview - 应用于 UITextView 的 CAGradient 颜色错误
我正在创建一个 iOS7 应用程序,并且我在一个单元格UITextView
内部应用了一个。如果我使用不同的颜色可以正常工作,但如果我使用渐变的颜色之一,它会变成灰色......UITableView
CAGradient
clearColor
clearColor
这是我的代码。theContent
是我的UITextView
。
这是最终的(错误的)结果......
我怎样才能解决这个问题有一个clearColor
渐变whiteColor
???
ios - 如何为 UIButton 设置自定义渐变背景?
我想创建一个自定义 UIButton 渐变背景。我附上了一些关于要求的图片。
但是我的渐变背景并不像我预期的那样。
我的问题是如何将位置或位置设置为渐变?(从上到中,然后从中到下)。
这是我的代码: