草庐IT

ios - 在 UIView 中绘制触摸点会在边界上产生模糊的绘制效果

解决我的最后一个问题:Draw/PaintlikesketchcolorinsideabezierpathinUIView,我拍摄了一张充满所选颜色的精确图像(路径)。然后,为了在UIView中绘制它,我采用了上下文颜色:lineColor=[UIColorcolorWithPatternImage:img];在drawrect中:CGPointmid1=midPoint(previousPoint1,previousPoint2);CGPointmid2=midPoint(currentPoint,previousPoint1);[curImagedrawInRect:CGRectZ

multithreading - 在后台线程上将 UIVIew 渲染为图像的安全方法?

我正在创建要存储在磁盘上并显示给用户的小图block图像。这是我目前执行此操作的过程:创建一个代表我想在屏幕上显示的UI的ViewController从ViewController获取View并从中渲染图像将其保存到磁盘并稍后在屏幕上显示当我尝试访问ViewController的View时,我崩溃了。当我试图在线研究这个问题时,关于在后台创建View是否安全,我得到了相互矛盾的结果。我读到UIGraphicsGetCurrentContext调用应该是线程安全的,但也许不能在后台线程上访问UIView?我正在为iOS4及更高版本编写应用程序。这是我正在使用的代码(tile是ViewCo

ios - 使用 IB 从 View Controller 的 View 加载带有 XIB 的自定义 UIView

我有一个使用InterfaceBuilder构建的自定义UIView(MyCustomUIView)。我想把这个自定义View放在MyViewController的View中,它也是使用IB设计的。我在MyViewController的XIB中放置了一个UIView作为subview,并将其类设置为MyCustomUIView。问题是,当我运行代码时,只出现一个空白View。(当我在代码中实例化MyCustomUIView时,它显示得很好。)我只是在MyCustomUIView.m中按以下方式覆盖initWithFrame:方法:-(id)initWithFrame:(CGRect)f

ios - 使用 layoutSubviews 与 drawRect 自定义 UIView 绘图

CAShapeLayers的绘制应该从drawRect()调用还是从layoutSubviews()调用?根据Apple关于UIViews的文档,绘图操作应该放在drawRect()中。然而,在KevinCathey的WWDCsession中情况并非如此:What'sNewinInterfaceBuilder(他在其中演示了构建可在InterfaceBuilder中访问的自定义UIView的过程)。在演示期间,他在layoutSubviews中执行View的绘制,而不是在drawRect中执行。他的解释是:IfIweretoimplementdrawRect,that'snotgoin

ios - 使用带有 CAMediaTimingFunction 的 CADisplayLink 'combined' 为 UIView 设置动画。 (获得任意曲线)

我正在使用CADisplayLink制作View动画,它只是插入一个值并重绘View本身。例如我有一个ViewMyView并且它有一个属性value,每当设置值时我调用setNeedsDisplay并且View知道要绘制什么。为此设置动画,我使用CADisplayLink并且我希望View在值之间“变形”。我通过插入动画开始和停止值的值来做到这一点:-(CGFloat)interpolatedValue:(CGFloat)sourceValuewithValue:(CGFloat)targetValueforProgress:(CGFloat)progress;现在获得线性进展很容易并

iphone - 在不缩放 subview 的情况下缩放 UIView

我试图在不缩放其subview的情况下缩放UIView,或者在我的情况下,我只想在一个轴上缩放subview。我需要这些层次结构,因为我正在设置一些手势识别器来检测平移和旋转,我希望这些与父View同时发生。但是,我不希望缩放同时发生。对于某些subview,我希望它只在垂直或水平方向上发生,或者根本不缩放。在UIView上使用CGAffineTransform时,有没有办法控制UIViewsubview中的自动缩放? 最佳答案 如果您确保subview的autoresizingMask设置正确,您可以更改容器UIView的框架(它

iphone - 使用 CALayer 作为 subview 的动画 UIView 框架

我有什么:我有一个UIView's的层次结构和一个CAGradientLayer,我用它来设置这个层次结构的“背景颜色”。所以我有这样的东西:ViewA->ViewB->CAGradientLayer我在做什么:有一次,我想为ViewA的frame(仅它的高度)设置动画。所以它会是这样的:[UIViewanimateWithDuration:timeIntervaldelay:0options:UIViewAnimationOptionCurveEaseInanimations:^{viewA.frame=newFrame;}];问题:问题在于CAGradientLayer不会为其框架

ios - 在 iOS 9 中设置 UIView 的碰撞边界路径

在iOS9中,Apple将collisionBoundsType引入了UIKit-Dynamics。设置此UIDynamicItemCollisionBoundsTypeRectangle或将其设置为UIDynamicItemCollisionBoundsTypeEllipse时没有问题。下面的屏幕截图来self正在制作的游戏,其中玩家的collisionBoundsType设置为矩形,球设置为椭圆:但是,当我将玩家的collisionBoundsType设置为路径时,我会出现奇怪的行为,如下所示:View看起来比它应该的高,碰撞体在它应该在的地方的右边。目前我将collisionBo

ios - UIView 动画 block 暂停动画和完成代码

我有一个动画block来执行一个简单的基于变换的动画,完成后从其父View中删除有问题的View。UIView*msgView=[[UIViewalloc]initWithFrame:CGRectMake(160,120,160,100)];//DostufftosetupthesubviewsofmsgView.//AddthemsgViewtothesuperview(ViewController)thatisgoingtodisplayit.CATransform3Dtransform=CATransform3DMakeScale(2.5,2.5,1.0);[UIViewanim

ios - UIView 的框架大小问题

我正在处理一个iPad项目,目前它处于横向View。我尝试这样做:self.view.frame.size.height为什么总是返回960?而在风景中,View本身的高度尺寸应该是768,对吗?我想做的是allocInitWithFrame一个位于底部的UIToolbar。UIToolBar的高度为50,所以这是我失败的做法:self.bottom_bar=[[UIToolbaralloc]initWithFrame:CGRectMake(0,self.frame.size.height-50,self.view.frame.size.width,50)];为什么会这样,我该怎么做?