草庐IT

ios - CALayer : Screen point to Layer point

我有一个在屏幕坐标中的CGPoint。我还有一个应用了变换矩阵(缩放、旋转和平移)的CALayer。如何将屏幕坐标中的点转换为图层的局部坐标? 最佳答案 CALayer有执行此操作的方法,请在documentation中查找–convertPoint:fromLayer:和–convertPoint:toLayer: 关于ios-CALayer:ScreenpointtoLayerpoint,我们在StackOverflow上找到一个类似的问题: https:

ios - 如何在 iOS 7.1.1 中去掉 UIView 中用 layer.cornerRadius 舍入的细边框?

我有一个自定义的UIView,它通过像这样使用layer.cornerRadius来圆角:-(void)layoutSubviews{[superlayoutSubviews];self.layer.cornerRadius=self.frame.size.width/2.0;self.layer.borderColor=[UIColorwhiteColor].CGColor;self.layer.borderWidth=2.0;self.layer.masksToBounds=YES;self.backgroundColor=[UIColorredColor];}我怎样才能摆脱非常细

ios - 调用 layer.setNeedsDisplay() 显示黑色背景

当我在UIView的CALayer上调用setNeedsDisplay()时(直接调用,或通过needsDisplayOnBoundsChange调用),它会将背景绘制为黑色。myView.layer.setNeedsDisplay()当我直接在UIView上调用“setNeedsDisplay()”时,它不会显示为黑色:myView.setNeedsDisplay()为什么会发生这种情况,我该如何解决? 最佳答案 问题是我的View的背景颜色以某种方式设置为nil而不是.white或.clear,例如。这似乎很奇怪,只有在图层而不

ios - CALayer.draw(in :) and CALayer. needsDisplay(forKey :) not called when expected, presentation layer unexpectedly nil

我正在尝试实现一个具有隐式动画属性的图层,但我看到了一些非常奇怪的行为。这是一个简单的层,它演示了我的意思:classCustomLayer:CALayer{overrideinit(){super.init()implcitlyAnimatedProperty=0.0000needsDisplayOnBoundsChange=true}overrideinit(layer:Any){super.init(layer:layer)implcitlyAnimatedProperty=(layeras!CustomLayer).implcitlyAnimatedProperty}requi

iOS View.layer.border 有白边

我正在使用定义我的自定义View的边框,如下所示:layer.borderColor=BACKGROUND_COLOR.CGColor;然而,在我设置它并在设备上运行之后,我可以在边界周围的View周围检查一个非常细小的模糊锯齿形白色边缘。看起来像是渲染问题。我想知道是否可以解决这个问题?谢谢--编辑:添加截图(低亮度显示器可能看不清楚)-- 最佳答案 也设置边框宽度..并在没有角半径的情况下尝试一次view.layer.borderWidth=1.0;view.layer.borderColor=BACKGROUND_COLOR.

ios - view.Layer.CornerRadius 不适用于 UIView Swift 3 iOS 的 UIScrollView subview

我希望View有圆角所以我添加了cardView.layer.cornerRadius=5但是cardView的subview,即UIScrollView的sViewListing似乎不受它的影响。我只想将UIScrollView的topRight&topLeftcornerRadius设置为5,所以我也尝试使用UIBezierPath来屏蔽它,但是它似乎仍然不起作用。以下是我尝试过的:importUIKitclassTableViewCell:UITableViewCell{@IBOutletvarcardView:UIView!@IBOutletvarsViewListing:UI

ios - 旋转时 layer.border 上的线条不平滑

我需要旋转一个UIImageView:UIImageView*img=[[UIImageViewalloc]init];img.layer.borderWidth=3.0;img.layer.borderColor=UIColorFromRGB(0xffffff).CGColor;img.layer.shadowColor=UIColorFromRGB(0x000000).CGColor;CATransform3Dtransform=CATransform3DMakeRotation([HelperdegreesToRadians:(5)],1,1,1);img.layer.shado

iphone - 使用 UIGradientLayer 作为 layer.mask 淡出 ScrollView 的底部/顶部 --> 掩码的重新定位滞后

我有一个UIScrollView的子类,它应该在顶部/底部淡出。(从不透明到透明颜色,就像Notes.app在DetailView底部所做的那样。)所以我添加了一个UIGradientLayer作为scrollview.layer.mask在我第一次滚动之前它似乎工作正常:CAGradientLayer*mask=[CAGradientLayerlayer];mask.locations=[NSArrayarrayWithObjects:[NSNumbernumberWithFloat:0.0],[NSNumbernumberWithFloat:0.1],[NSNumbernumber

ios - CATransformLayer : changing property masksToBounds in transform-only layer, 将无效

我正在使用Xcode7和swift2。在我的iPadAir,iOS9.1上,当键盘出现时,调试控制台会抛出一个错误2015-10-2813:07:35.114Note[73896:6954126]-changingpropertymasksToBoundsintransform-onlylayer,willhavenoeffect2015-10-2813:07:35.115Note[73896:6954126]-changingpropertymasksToBoundsintransform-onlylayer,willhavenoeffect2015-10-2813:07:35.11

ios - 简化的屏幕截图 : record video of only what appears within the layers of a UIView?

ThisSOanswer介绍了如何对UIView进行屏幕捕获。我们需要类似的东西,但不是单一的图像,我们的目标是在60秒内生成UIView中出现的所有内容的视频——概念上就像只记录UIView,忽略其他层。我们的视频应用程序会在用户录制的任何内容上叠加图层,最终目标是制作将这些图层与原始视频合并的主视频。但是,使用AVVideoCompositionCoreAnimationTool将层与原始视频合并非常、非常、非常慢:导出60秒的视频需要10-20秒。我们发现合并两个视频(即仅使用AVMutableComposition而不使用AVVideoCompositionCoreAnimat