我有一個3頁的水平滾動視圖。iOS梯度動畫與uiscrollview分頁
我想每個頁面都有一個不同的背景顏色,並在三種顏色之間繪製漸變。
Page 1綠色,第2頁藍色和第3頁紅色。 我該怎麼做?
我在想ScrollViewDidScroll
委託方法:
- (void)scrollViewDidScroll:(UIScrollView *)sender
{
CGFloat pageWidth = self.statisticScrollView.frame.size.width;
float fractionalPage = self.statisticScrollView.contentOffset.x/pageWidth;
NSLog(@"fractional Page: %f", fractionalPage);
NSInteger lowerNumber = floor(fractionalPage);
NSLog(@"lower Page: %i", lowerNumber);
NSInteger upperNumber = lowerNumber + 1;
NSLog(@"upper Page: %i", upperNumber);
if (self.lastContentOffset > sender.contentOffset.x){
//RIGHT --->
if (lowerNumber == 0) {
//gradient green to blue
}else if (lowerNumber == 1){
//gradient blue to red
}else if (lowerNumber == 2){
//end pages
}
}else if (self.lastContentOffset < sender.contentOffset.x){
//LEFT <----
if (lowerNumber == 0) {
//gradient blue to green
}else if (lowerNumber == 1){
//gradient red to blue
}else if (lowerNumber == 2){
//end pages
}
}
}
我可以使用fractionalPage
來設置漸變的百分比是多少?
我讀了startPoint
和endPoint
CAGradientLayer
的屬性,但它似乎無法正常工作。
任何建議將不勝感激! 預先感謝您
您好,非常感謝您的回覆。我試過你的代碼。它可以工作,但不是我想的效果......無論如何,謝謝!我正在嘗試使用'fractionalPage'的值(如果我在第一頁中的值從0.0變爲1.0 - 如果我在第二頁中,則值從1.0變爲2.0 ...)來設置最終顏色的位置(如果我們位於第一頁,則爲藍色)。 – Tenaciousd93 2014-08-31 15:44:03