gpt4 book ai didi

ios - UIView一开始就往下跳

转载 作者:塔克拉玛干 更新时间:2023-11-02 21:03:36 25 4
gpt4 key购买 nike

我需要更改 UIViewtableview 滚动时的位置。当我在动画 block 中更改 UIView 的帧大小时,它会下降,然后移动到正确的位置。请看我的代码。

- (void)scrollViewDidScroll:(UIScrollView *)scrollView {
CGPoint scrollVelocity = [_collectionViewLeaderboard.panGestureRecognizer velocityInView:_collectionViewLeaderboard.superview];
if (scrollVelocity.y > 0.0f){
NSLog(@"going down");
[UIView animateWithDuration:0.3f
animations:^ {

_headerview.frame = CGRectMake(0, 0, _headerview.frame.size.width, _headerview.frame.size.height);

_headerviewSecond.frame = CGRectMake(0, _headerview.frame.size.height, _headerviewSecond.frame.size.width, _headerviewSecond.frame.size.height);

self.collectionViewLeaderboard.frame = CGRectMake(self.view.frame.origin.x, _headerviewSecond.frame.size.height+_headerview.frame.size.height, self.view.frame.size.width, self.view.frame.size.height);

frameconditon = _headerview.frame;

} completion:^ (BOOL completed) {

}];

}
else if (scrollVelocity.y < 0.0f){
NSLog(@"going up");

//CGAffineTransform transform = CGAffineTransformMake(1, 0, 0, 1, _headerview.frame.origin.x, _headerview.frame.origin.y);
[UIView animateWithDuration:5.0 animations:^{
NSLog(@"test");


_headerview.frame = CGRectMake(0, -(_headerview.frame.size.height), _headerview.frame.size.width, _headerview.frame.size.height);

_headerviewSecond.frame = CGRectMake(0, (_headerview.frame.size.height)-40, _headerviewSecond.frame.size.width, _headerviewSecond.frame.size.height);

} completion:^(BOOL finished) {

}];


self.collectionViewLeaderboard.frame = CGRectMake(self.view.frame.origin.x, _headerviewSecond.frame.size.height, self.view.frame.size.width, self.view.frame.size.height);

}
}

headerview 应该移动到 View 的顶部并且它可以工作但是当我第一次运行它时,它会下降并返回到正确的位置。我将如何在滚动时更改约束。

最佳答案

对于基于约束的 View ,尝试使用 socket 通过更改约束常量属性来设置动画。

关于ios - UIView一开始就往下跳,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39773532/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com