cashapelayer相关内容
我有一个 UIImageView.在里面,我正在画一条线与用户触摸事件.问题是可以在 UIImageview 的任何地方画线,但我喜欢只用图像模式画线. 例如,看看这张图片.我只需要在图像图案上画线. 这是我的代码: -(void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event{UITouch *touch = [[e
..
我已经能够完成我一直想要完成的工作,那就是复制 iOS 的内置圆形照片裁剪器,用于内置联系人应用程序.但是,我一直在努力使我的 CAShapeLayers 正确制作.我正在尝试制作一个直径为 320 像素的透明圆,而视图的其余部分则填充了 0.9 alpha 黑色背景.圆形和矩形位于正确的位置,但是,圆形并不像我需要的那样完全透明. 我不知道如何解决这个问题.我感谢您的帮助!代码和截图:
..
我需要知道如何缩小或放大 CGPath 使其适合 UIView? 设置背景颜色为黄色,以便看清视图 self.frame = CGRectMake(0, 0, 181, 154);self.backgroundColor = [UIColor YellowColor]; 绘制 CAShapeLayer CAShapeLayer *shape = [CAShapeLayer 层];sha
..
我无法将 CAShapeLayer 居中放置在 UIView 中.我已经搜索过,大多数解决方案都来自 2015 年之前的 Obj C 或尚未解决. 附上图片的样子.当我检查它时,它在红色视图内,但不知道为什么它不居中.我试过调整它的大小,但仍然不起作用. let progressView: UIView = {让视图 = UIView()view.backgroundColor = .
..
正如在之前的 StackOverflow 问题中向我建议的那样,我正在尝试改进我的绘图方法,让我的用户在 UIView 中绘制线条/点.我现在尝试使用 CAShapeLayer 而不是 dispatch_async 进行绘制.然而,这一切都正常工作,但是,在触摸移动时连续绘制到 CAShapeLayer 变得缓慢并且路径落后,而我的旧(我被告知效率低下)代码运行得非常流畅和快速.你可以看到我在下面
..
我创建了一个带有半透明黑色背景的 UIView 来放置在我的主应用程序的视图上.我在这里的目标是在 UIView 的某个地方创建一个切出的圆形形状,在那里看不到半透明的黑色背景,在整个图像上产生黑色蒙版的效果,除了圆形区域(这是为了突出显示该区域中的按钮). 我已经设法使用 CAShapeLayer 来创建一个圆形蒙版,但这产生了相反的效果(即视图的其余部分是清晰的,并且圆圈内部是半透明的黑
..
是否有一种很好的方法来计算给定时间(从 0 到 1)的路径(CGPath 或 UIBezierPath)的位置? 以 CAShapeLayer 为例,您可以创建动画笔触末端.我想在任意时间知道该笔划结束的位置. 提前致谢,阿德里安 解决方案 您绝对可以将您的方法基于 CADisplayLink 和跟踪层.但是,如果您不介意自己做一点数学,那么解决方案并不太复杂.另外,您不必依赖
..
是否有一种很好的方法来计算给定时间(从 0 到 1)的路径(CGPath 或 UIBezierPath)的位置? 以 CAShapeLayer 为例,您可以创建动画笔触末端.我想在任意时间知道该笔划结束的位置. 提前致谢,阿德里安 解决方案 您绝对可以将您的方法基于 CADisplayLink 和跟踪层.但是,如果您不介意自己做一点数学,那么解决方案并不太复杂.另外,您不必依赖
..
我尝试将圆形变成正方形,反之亦然,我几乎就到了.但是,它没有按预期制作动画.我想同时对正方形的所有角进行动画/变形,但我得到的是以下内容: 我使用 CAShapeLayer 和 CABasicAnimation 来为形状属性设置动画. 这是我创建圆形路径的方法: - (UIBezierPath *)circlePathWithCenter:(CGPoint)center radius
..
我在屏幕上总共绘制了 21 条线用于测量工具.线条在 UIViewController.view 上绘制为一个图层.我正在尝试按如下方式删除这些行.NSLog 语句确认我得到了我正在寻找的所有 21 个 CAShapeLayers. CAShapeLayer* layer = [[CAShapeLayer alloc]init];for (UIView *viewsToRemove 中的子视图)
..
我正在尝试找到一种方法来为我正在创建的笔触颜色设置动画 circleLayer = CAShapeLayer()circleLayer.path = circlePath.CGPathcircleLayer.lineCap = kCALineCapRoundcircleLayer.fillColor = UIColor.clearColor().CGColorCABasicAnimation 填
..
我在 UIView 中有一个 UITableView,它由以下类定义的自定义单元格组成: class CustomAddFriendTableViewCell: UITableViewCell {@IBOutlet 弱变量 UsernameLbl:UILabel!@IBOutlet 弱变量 ProfileImg:UIImageView!@IBOutlet 弱变量 AddFriendBtn:UIB
..
所以我正在制作一种基于六边形的简单游戏.这是它的样子: 我已经设法按照我想要的方式绘制六边形作为 CAShapeLayers,但我想让它们可点击.简而言之,我想以某种方式将它们投射到 UIButtons 中,以便我可以通过 touchUpInside 跟踪选择了哪个.我能想到的另一种方法是跟踪触摸并检查它们是否在带有标签的形状中,但这似乎很复杂.下面是我的代码: let screenSi
..
我想弄清楚如何屏蔽 UIView 以显示一个形状,该形状代表一个正方形,上面有一个圆的一半. 基本上,这就像只对顶部的两个角应用边框半径以将它们四舍五入并创建一个圆弧. 我正在使用 swift,这让我发疯了. 编辑:CornerRadius 不符合我的要求.我觉得我必须使用 CGShapeLayer 但我不确定如何创建弧线. 编辑2: 编辑 3: 考虑到解释我想
..
我只是使用 UIBezierPath 绘制路径,我想获取 UIBezierPath 下的每个 CGPoint.我尝试使用以下代码 func forEach( body: [![enter image description here][1]][1]@escaping @convention(block) (CGPathElement) -> Void) {typealias Body = @co
..
我已经使用 UIBezierPath 在 swift 中绘制了半圆,父对象是 UIImageView 现在我想剪辑圆的外部区域.我试过 clipsToBounds 但没有用. let path = UIBezierPath(arcCenter: CGPoint(x: -60, y: imgView.frame.size.height/2),半径:imgView.frame.size.wid
..
在 swift 中,我成功地制作了一个包含在 CAShapeLayer 中的动画 bezier path.我唯一的问题是在其他屏幕尺寸上实现它.有谁知道我如何使用其中的路径缩放 CAShapeLayer ?即,将其缩小为原始尺寸的一半. 解决方案 使用这个功能: var shapelayer:CAShapeLayershapelayer.transform = CATransform3
..
这是我的 Xib.我只是拖了一个 UIButton 并改变了它的背景颜色. 我使用此代码创建了一个半圆形图层 let circlePath = UIBezierPath.init(arcCenter: CGPointMake(mybutton.bounds.size.width/4, 0), radius: mybutton.bounds.size.height, startAngle:
..
我有一个 CGRect 值,需要在它周围画一个边框.我只希望在没有任何线条连接它们的情况下绘制角落. 这样的东西... 我将如何使用 swift 绘制这个图形? 解决方案 这是一个自定义的 UIView 类,它用四个角绘制自己.您可以设置各种属性以获得所需的外观. class CornerRect: UIView {var 颜色 = UIColor.black {已设置{se
..
我正在尝试使用下面的代码圆顶角 func roundCorners(corners:UIRectCorner, radius: CGFloat) {让路径 = UIBezierPath(roundedRect: self.bounds,byRoundingCorners: 角,角半径:CGSize(宽度:半径,高度:半径))让 maskLayer = CAShapeLayer()maskLaye
..