我想在創建自定義控件的同時學習一些動畫。我已經通過一個夢幻般的教程在這裏了: 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