草庐IT

ios - 如何理解应用了旋转变换的 UIView 的框架?

在为应用了旋转变换的UIView执行下面的代码时,我遇到了一个奇怪的问题。我想做的是从superView中删除View,然后将其插入特定View下并恢复其框架:UIView*movedView=[self.viewsobjectAtIndex:newIndex];center=movedView.center;CGRectoldFrame=movedView.frame;//findthelayerontopandinsertthemovedviewunderthatUIView*coveringView=[self.viewsobjectAtIndex:newIndex-1];[mo

ios - UILabel 不在 UIView 中设置动画,使用了自动布局

我有一个非常简单的应用程序。它包含一个红色View和一个绿色标签。还有一个运行动画的按钮。我通过更改其宽度约束常量的值来为红色View设置动画。[self.viewlayoutIfNeeded];[UIViewanimateWithDuration:0.4animations:^{self.widthConstraint.constant=width;[self.viewlayoutIfNeeded];}];红色View按预期进行动画处理,但内部的绿色标签会立即改变其宽度。我玩了不同的动画标志,尝试了SO的几个技巧,但没有带来它的工作。请查找thesourceshere.TIA

ios - 获取 UIView 屏幕截图的最快方法

我搜索了很多,但只找到了两种截取UIView屏幕截图的方法。首先renderInContext:我以某种方式使用过它CGContextRefcontext=[selfcreateBitmapContextOfSize:CGSizeMake(nImageWidth,nImageHeight)];CGAffineTransformflipVertical=CGAffineTransformMake(1,0,0,-1,0,nImageHeight);CGContextConcatCTM(context,flipVertical);[self.layersetBackgroundColor:[

ios - 在正弦波路径上为 UIView 设置动画

如何使UIView沿正弦波路径移动?理想情况下,我可以在UIView离开屏幕并释放它时停止动画。我看到UIView->animateWithDuration一次只能在一个属性上设置动画,但这似乎同时发生了两件排他性的事情:它向右移动和向上/向下移动。 最佳答案 您实际上可以使用一个简单的CAKeyframeAnimation来做到这一点。overridefuncviewDidLoad(){super.viewDidLoad()letmyView=UIView(frame:CGRect(x:10,y:100,width:50,heig

ios - 如何在UIView中绘制贝塞尔曲线

我需要在UIView中制作一条曲线,如下图所示。我必须使用UIBezierPath。请帮我解决这个问题。我还想知道如何从水平轴翻转曲线,以便在顶部有圆弧,在底部有底部。 最佳答案 要在特定的CGSize内绘制实心圆弧,您可以像这样定义一个UIBezierPath:-(UIBezierPath*_Nullable)pathOfArcWithinSize:(CGSize)size{if(size.width==0||size.height这只是使用一点三角函数来计算给定View高度和宽度的弧的角度和半径。一旦有了它,您就可以使用该路径构

objective-c - 停止 UIView 动画

这个问题在这里已经有了答案:关闭10年前。PossibleDuplicate:CancelaUIViewanimation?我有以下动画,我想在按下按钮时停止它。你能告诉我我该怎么做吗?我不知道怎么做。谢谢。-(void)animationLoop:(NSString*)animationIDfinished:(NSNumber*)finishedcontext:(void*)context{[UIViewbeginAnimations:@"Moverandomly"context:nil];[UIViewsetAnimationDuration:1];//[UIViewsetAnim

iphone - 如何在启用自动布局的情况下更改 iOS6 中的 UIView 大小?

我理解iOS6中新的自动布局技术的想法是你不再需要设置框架,而是你按意图编码?如果我在运行时通过它的框架更改UIView的大小,那么它的任何subview当前都不会随着View移动和更改。因此,我为UIView上的约束创建了一个导出,并更改了该约束的常量。这会改变UIView的大小,所有subview也会适当移动。那么我走在正确的轨道上了吗?这就是我想在自动布局下更改UIView大小的方式吗? 最佳答案 您不设置框架。您改为更新相关约束(您将需要引用这些约束,作为导出或作为您在代码中创建约束后保留的属性)。作为一个简单的示例,如果您

ios - UIView 转换到同一个 View

我有一个显示静态tableview的UITableViewController。我必须更新提供辅助模式的项目,其中该tableview应该翻转并显示不同的数据。我的方法是将两种模式的所有静态单元格放在一个大的静态tableview中,以执行翻转并隐藏在特定时刻不需要的单元格。翻转应该只在tableviewcontrollerview上执行,因此不会影响navigationbar或主tabbar。到目前为止,我一直在尝试使用的代码来实现这个简单的魔术是://Transitionusingapageflip.[UIViewtransitionFromView:self.tableviewt

ios - 向 UIView 添加渐变的现代技术

我知道有几种向UIView添加背景渐变的方法。我想知道这样做最有效和可扩展的方式是什么,为什么?以下是我使用的技术:创建UIView的subview并覆盖drawRect,我在当前上下文中绘制渐变。一个。当使用上面的渐变创建它时,我想装饰和插入这个背景渐变作为第一个subview,即–insertSubview:atIndex:从上方获取背景渐变View后,我在图像上下文中渲染它并将其用作背景图像,即UIGraphicsBeginImageContext(gradView.bounds.size);[gradView.layerrenderInContext:UIGraphicsGet

ios - 自动布局 `setFrame:` UIView 的 subview

我有一个容器UIView。它的child的位置是用自动布局管理的。但是,我想明确地定位容器本身。容器存在于我称为VideoPreviewView的UIView子类中。该容器名为contentOverlayView。这是我的代码,用于向填充它的容器添加一个明显的红色子项,但边缘处有1像素的边距:UIView*constredView=[UIViewnew];[redViewsetTranslatesAutoresizingMaskIntoConstraints:NO];[redViewsetBackgroundColor:[UIColorredColor]];[[videoViewcon