我有两个按钮,我想改变他们的阿尔法,同时水平滚动两个视图。
我希望一个按钮从0.3 alpha开始,另一个按钮从1.0开始。当我滚动到另一个视图时,我希望它们切换值:第一个按钮切换到1.0,第二个按钮切换到0.3。
我只玩了一个scrollViewDidScroll
代表里面的按钮:
allBtn.alpha = scrollView.contentOffset.x / scrollView.bounds.size.width * 0.3
卷轴后我有0.3阿尔法,但当我回去时,它将是0。
你知道怎么做吗?
最佳答案
- (CGFloat)calculateButtonAlphaUsingScrollView:(UIScrollView *)scrollView withAlphaForOffsetZero:(CGFloat)alphaForOffsetZero withAlphaForOffsetMax:(CGFloat)alphaForOffsetMax {
CGFloat width = scrollView.frame.size.width;
CGFloat contentWidth = scrollView.contentSize.width;
CGFloat scrollLength = contentWidth - width;
CGFloat scrollOffset = scrollView.contentOffset.x;
CGFloat scrollValue = scrollOffset / scrollLength;
CGFloat alphaChange = alphaForOffsetMax - alphaForOffsetZero;
return alphaForOffsetZero + alphaChange * scrollValue;
}
关于ios - 滚动时更改按钮的Alpha,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/31839540/