草庐IT

ios - drawRect 绘制的内容是否可以使用 UIView 动画进行动画处理?

在iOS上,如果有两个圆圈,都是UIView对象,那么它们的center或frame可以使用动画>UIView动画。但难点在于,包含这两个圆的容器UITreeView,使用drawRect画一条连接圆心的线。在drawRect中,我可以使用CG或UIKit来画线,我选择使用UIBezierPath的moveToPoint和addLineToPoint画线,其实应该只是下面的CG调用,但更容易使用。但是当一个圆圈移动到另一个位置时,直线不会随之移动,所以动画看起来有点奇怪。有没有办法让它动画化?我尝试在TreeView类中而不是在UINodeView类(圆圈)中设置动画,但这无济于事。事

iphone - 如果用自定义子类替换默认 View ,则 cornerRadius 不起作用

以下设置:我有一个popupViewController,它有一个自定义的UIView子类作为它的View,在loadView中完成-(void)loadView{CGRectstartingPopupSize=CGRectMake(0.0f,0.0f,300.0f,160.0f);_popupView=[[MoviePopupViewalloc]initWithFrame:startingPopupSize];self.view=_popupView;}在这个UIView子类中,我在它的初始化方法中有以下代码-(id)initWithFrame:(CGRect)frame{self=

ios - 自定义 map 标注 View 在点击时隐藏

我制作了自定义map标注。我的标注包含UIButtons和UITextView。当我点击UIButton时,它按得很好。但是当我点击UITextView时,它会将光标移动到点击位置,然后取消选择固定并消失标注...我已经实现了MyAnnotationView的hitTest:withEvent:方法,如下所示:https://stackoverflow.com/a/13495795/440168但是正如我在日志中看到的那样,[superhitTest:withEvent:]永远不会返回nil。这是我的MyAnnotationView方法:-(BOOL)pointInside:(CGPo

ios App 在解除分配 UIView 子类实例时崩溃

我使用CocoaTouch和ARCnative构建的应用程序在取消分配UIView子类实例时崩溃。这是崩溃日志。OSVersion:iOS6.1.3(10B329)ExceptionType:EXC_BAD_ACCESS(SIGSEGV)ExceptionCodes:KERN_INVALID_ADDRESSat0x00000008CrashedThread:00:0x39de65b0libobjc.A.dylibobjc_msgSend+161:0x31edb694CoreFoundation-[NSArraymakeObjectsPerformSelector:]+3002:0x33

ios - UIView 中的动画 SVG

我需要在UIView中播放不同的动画SVG文件。例如,像this.这可能吗,谁能告诉我怎么做?更新与PocketSVG我正在尝试这个(感谢@Dhanashree):-(void)viewDidLoad{[superviewDidLoad];CGPathRefmyPath=[PocketSVGpathFromSVGFileAtURL:[NSURLURLWithString:@"http://www.hypnobeast.com/spirals/Hypno_Beast_Spiral_1000x1000.svg"]];CAShapeLayer*myShapeLayer=[CAShapeLay

ios - 在 Retina 显示器上带有 drawRect/更新图像性能问题的 UIView

问题简而言之:看起来像drawRect本身(甚至是空的)会导致严重的性能瓶颈,具体取决于设备的分辨率-屏幕越大,情况越糟。有没有办法加快View内容的重绘?更多详情:我正在iOS上创建一个小型绘图应用程序-用户将手指移到显示器上以画一条线。这背后的想法很简单-当用户移动他的手指时touchesMoved将更改累积到屏幕外缓冲区图像中并使View无效以将屏幕外缓冲区与View的内容合并。简单的代码片段可能如下所示:@interfaceCanvasView:UIView...end;@implementationCanvasView{UIImage*canvasContentImage;U

ios - 以编程方式滑动 UIScrollView

当用户在UIScrollView上做出轻弹手势时,UIScrollView获得动力并开始移动,然后减速并最终停止。但是我怎样才能以编程方式实现这一点呢?我的意思是,无需轻弹手指,UIScrollView就会自动开始移动,然后减慢到0的速度。在我的应用程序中,我使我的UIScrollView不同于普通的UIScrollView(假设它看起来像一个滚轮),所以我想提示用户他可以滚动它(然后一切都开始了!)我用谷歌搜索了很多,但似乎没有办法解决我的问题。setContentOffset无法产生自然的“减速并停在前方某处”效果。任何想法将不胜感激。提前致谢。 最佳答

ios - 嵌入固有大小的 View 会破坏动画

我已经构建了一个测试项目来展示目标是什么与我目前正在发生的事情。左边的gif显示了我想要的最终外观。它是用一个单一的传统View层次结构构建的。我需要通过粉红色Viewanembedded/containedview来实现这一点.到目前为止,我的尝试只让我看到了右边的gif。(粉红色)包含View的增长方式可能是一个重要的细节:蓝色subview改变了它的高度,并且由于所有连接的垂直约束,整个装置获得了新的固有尺寸。如您所料,这是对我的实际应用程序的简化,但我认为它具有所有重要的部分。我看到的主要奇怪的东西:黄色/橙色的“其他”View根本没有动画效果。粉红色包含的View本身的动画效

ios - 当我将它作为 subview (通过 rootViewController 属性)添加到 UIWindow 并进行翻转时, View 为 “jumping”

我有两个简单的UIViewController,它们的View是320x460,带有状态栏。我在AppDelegate中做self.window.rootViewController=[[[SimpleControlleralloc]init]autorelease];[self.windowmakeKeyAndVisible];在SimpleController中我有一个按钮-(IBAction)switchToVerySimpleController{[UIViewtransitionWithView:[[UIApplicationsharedApplication]keyWind

iphone - 按需创建延迟

这是一个奇怪的问题,但我需要创建人为延迟来测试我的游戏在延迟峰值期间的运行情况......我不知道如何去做...如果可能的话,我希望能够打开/关闭延迟。 最佳答案 如果您想降低代码速度,可以使用NSThread类方法sleepForTimeInterval:引入阻塞。要模拟慢速网络连接,CraigHockenberry写了thisblogpost不久前。 关于iphone-按需创建延迟,我们在StackOverflow上找到一个类似的问题: https://s