gpt4 book ai didi

ios - 如何在 ios 中制作流畅的滑动动画

转载 作者:行者123 更新时间:2023-11-28 22:10:00 26 4
gpt4 key购买 nike

我想制作流畅的滑动动画。我只想当用户仅从右边框或左边框滑动页面时才可以滑动。页面中间滑动应该是不可能的。滑动应该可以从左到右和从右到左。

我尝试了很多滑动动画示例代码或演示代码。但这不是我想要的。我想要这样的动画https://itunes.apple.com/in/app/clear-tasks-to-do-list/id493136154?mt=8

在这个应用程序中,当我们触摸右边框时,它会平滑滑动。请指导我做这个动画。提前致谢。

最佳答案

抱歉回复晚了。刚看到这个问题。

如果您希望从边缘进行滑动操作,请在主视图的远端(左侧和右侧)创建 2 个 subview ,然后指定宽度为 30 或 40。

enter image description here

我相信您还有 2 个从左右弹出的 View 。因此,为了做到这一点,您需要在主视图的顶部添加 2 个 View 。现在对于左 View ,将其连接到主视图的右侧水平空间约束设置为小于主视图的 (-1)x 宽度的值。对于右 View ,将其连接到主视图的右水平空间约束设置为大于主视图宽度的值,使两个 View 都在主视图之外

X stands for a value greater than or equal to the mainview's width

X代表大于或等于主视图宽度的值

添加两个 NSLayoutConstraint 变量作为 IBOutlet 保存这 2 个值。

NSLayoutConstraint *leftViewHorizondalRightPadding;
NSLayoutConstraint *rightViewHorizondalRightPadding;

现在将 UISwipeGestures 添加到这些 subview (以橙色表示)。

UISwipeGestureRecognizer *leftToRightSwipe = [[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(handleSwipe:)];
[leftToRightSwipe setDirection:UISwipeGestureRecognizerDirectionRight];
[self.leftSubview addGestureRecognizer:leftToRightSwipe];

UISwipeGestureRecognizer *rightToLeftSwipe = [[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(handleSwipe:)];
[rightToLeftSwipe setDirection:UISwipeGestureRecognizerDirectionLeft];
[self.rightSubview addGestureRecognizer:rightToLeftSwipe];

///Now in the swipe handler distinguish the swipe actions
-(void)handleSwipe:(UISwipeGestureRecognizer *)recognizer {
NSLog(@"Swipe received.");
if (recognizer.direction == UISwipeGestureRecognizerDirectionRight) {
//It's leftToRight
leftViewHorizondalRightPadding.constant = 0;
[UIView animateWithDuration:1
animations:^{
[self.view layoutIfNeeded];
}];

}
else {
//It's rightToLeft
rightViewHorizondalRightPadding.constant = 0;
[UIView animateWithDuration:1
animations:^{
[self.view layoutIfNeeded];
}];

}
}

这将制作从左到右和从右到左的滑动动画。

希望这有帮助..

关于ios - 如何在 ios 中制作流畅的滑动动画,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23148104/

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