1
花了我幾周的時間來弄清楚這個簡單的技巧,所以讓我試試這個Q & A格式。動畫UIScrollView滾動
如何使用CoreAnimation動畫滾動UIScrollView? This answer過於複雜,儘管它確實朝正確的方向邁出了一步。
花了我幾周的時間來弄清楚這個簡單的技巧,所以讓我試試這個Q & A格式。動畫UIScrollView滾動
如何使用CoreAnimation動畫滾動UIScrollView? This answer過於複雜,儘管它確實朝正確的方向邁出了一步。
簡單!
要使用Core Animation,您必須修改UIView底層CALayer的屬性。原來,當你滾動一個UIScrollView時,你所做的只是修改CALayer的bounds
屬性(特別是origin.y
組件)。因此,此代碼將做到這一點:
NSString *keyPath = @"bounds.origin.y";
[self.scrollView.layer setValue:[NSNumber numberWithFloat:0] forKeyPath:keyPath];
CABasicAnimation *bounceAnimation = [CABasicAnimation animationWithKeyPath:keyPath];
bounceAnimation.fromValue = [NSNumber numberWithFloat:100];
bounceAnimation.toValue = [NSNumber numberWithFloat:0];
bounceAnimation.duration = 2.0f;
[self.scrollView.layer addAnimation:bounceAnimation forKey:@"someKey"];