2012-10-26 24 views
0

我想用UISlider控制我的UIBezierPath的绘图。iOS - 如何使用UISlider控制UIBezierPath绘图?

目标是能够清理时间轴(UISlider)并根据滑块的当前位置使线(UIBezierPath)绘制。

因此,当我擦洗前进的路径呈现&当我擦洗路径呈现向后。

我的代码来呈现路径基于哪个我添加反向路径(https://github.com/ole/Animated-Paths)

最主要的此示例代码在两个方向上拉伸我我在努力明白的是我怎么能有当我移动滑块,因为我真的不能使用动画,因为他们不会与滑块移动更新路径渲染..

干杯 达明

回答

0

所以我发现,我无法使用动画来实现我想要的东西,所以我用一个自定义UIView子类,并在其drawRect中方法实现的代码来处理

基本上我在子类中设置一个指数动画它控制了直角方法绘制的点数。

这给了我想要的方法,并允许我根据滑块更改值。

对于我用CGContextMoveToPoint & CGContextAddLineToPoint来呈现路径的绘图

干杯

1

如果您正在跟踪UISlider的“Control Events”,例如像这样:

[yourSlider addTarget:self action:@selector(seekBegan:) forControlEvents:UIControlEventTouchDown]; 
[yourSlider addTarget:self action:@selector(seekContinues:) forControlEvents:UIControlEventTouchDragInside]; 
[yourSlider addTarget:self action:@selector(seekEnded:) forControlEvents:UIControlEventTouchUpInside]; 

..然后你可以在“seekContinues:”里面做你的动画。我不能说它会多么顺利!因为可能会有很多电话通知该方法。