我想在创建自定义控件的同时学习一些动画。我已经通过一个梦幻般的教程在这里了: http://www.raywenderlich.com/9864/how-to-create-a-rotating-wheel-control-with-uikit动画转换的UIImageView?
我找到了工作,并且开发者在github上链接到自己的代码在这里: https://github.com/funkyboy/How-To-Create-a-Rotating-Wheel-Control-with-UIKit
现在我正在努力做动画时,选定的项目会在选中的插槽中旋转时增长。我还改变了选择的时隙是在底部,并以适应此我已经改变的代码的方法中
- (void) drawWheel
我已经改变了线
im.transform = CGAffineTransformMakeRotation (angleSize * I);
到
im.transform = CGAffineTransformMakeRotation(angleSize * I - M_PI/2);
考虑到现在是-pi/2
我想要做的就是所选择的丁香种植和尺寸的缩小,接下来的事情的位置;这将发生在两个不同的场合;一次,当轮子加载时,以及当关闭通过选定位置时。在这里,我有点卡住了。
我已经写了下列方法:
(无效)growImage:(的UIImageView *)V {
[UIView的animateWithDuration:1.0动画:^ { v.transform = CGAffineTransformMakeScale(1.3 ,1.3); } 完成:^(BOOL完成){UIView animateWithDuration:1.0动画:^ v.transform = CGAffineTransformMakeScale(1.0,1.0); }]; }];
}
和我调用此首先在initWheel方法,其中所述初始丁香是第一组:
if (i == 0) {
im.alpha = maxAlphavalue;
[self growImage: cloveImage];
}
对于第二项,我写了下面方法:
- (void)findViewandGrowImage:(int)tag {(self.container.subviews中的id myArrayElement){ } { UIImageView * v = myArrayElement; if(v。tag == tag){ [self growImage:v]; 休息; } } }
我在 调用 - (无效)touchesEnded:(NSSet中*)触摸withEvent:方法(的UIEvent *)事件{
因为如此,设定α值后:
lab.alpha = maxAlphavalue;
[self findViewandGrowImage : currentValue];
对我而言,我在某个地方存在一个根本的脱节:我做错了什么;第一个案件工作正常;第二种情况使得丁香旋转到轮子上的不同部分以及成长和缩小......我不知道为什么。我很喜欢任何输入。
谢谢。
我真的不明白你想看看你的第二个案例。 – HalR