如何在视图中滑动设置UITableView的动画
我想在单击按钮上单击"导航控制器顶部"的视图(不是通过按下视线上的视图),然后单击同一按钮时通过滑动将其隐藏起来. 我希望表观视图在当前视图中滑动. 解决方案 您将表视图的框架属性动画起来,以将其从屏幕上移出或回到屏幕上. 这是一些示例代码,它将表视图从屏幕上移动并在其位置移动另一个示例: [UIView beginAnimations:nil context:nil]; [UIView setAnimationDuration:kSlideTableDuration]; [UIView setAnimationCurve:UIViewAnimationCurveEaseOut]; [UIView setAnimationDelegate:self]; [UIView setAnimationDidStopSelector:@selector(tableAnimationDidStop:finished:context:)]; self.tableView1.fra
2 2023-05-07
编程技术问答社区
CATTransition页面从顶部卷曲
我想知道是否有人使用毒气从顶部进行了pagecurl.我有以下内容: CATransition *animation = [CATransition animation]; [animation setDelegate:self]; [animation setDuration:0.35]; [animation setTimingFunction:UIViewAnimationCurveEaseInOut]; animation.type = @"pageCurl"; animation.subtype = kCATransitionFromTop; animation.fillMode = kCAFillModeForwards; animation.endProgress = 0.30; [animation setRemovedOnCompletion:NO]; [self.view.layer addAnimation:animation forK
0 2023-05-07
编程技术问答社区
没有uiviewanimation的iphone页面curl
我正在尝试使用以下部分进行部分页面卷曲: CATransition *animation = [CATransition animation]; [animation setDelegate:self]; [animation setDuration:1.0f]; [animation setTimingFunction:UIViewAnimationCurveEaseInOut]; [animation setType:(notCurled ? @"mapCurl" : @"mapUnCurl")]; [animation setRemovedOnCompletion:NO]; [animation setFillMode: @"extended"]; [animation setRemovedOnCompletion: NO]; notCurled = !notCurled; [[delegate.
0 2023-05-07
编程技术问答社区
在制作动画时改变CALayer的颜色
方法1 CABasicAnimation *animation = [CABasicAnimation animationWithKeyPath:@"strokeStart"]; [CATransaction begin]; { [CATransaction setAnimationDuration:15];//Dynamic Duration [CATransaction setCompletionBlock:^{ }]; animation.timingFunction = [CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionLinear]; animation.autoreverses = NO; animation.removedOnCompletion = NO; animat
2 2023-05-06
编程技术问答社区
转移到其他视图的工作,在返回时崩溃了
我正在使用此代码从当前视图过渡到另一个视图,并且它有效.问题是,当我尝试返回当前视图时,应用程序崩溃. 这是我用来从当前视图传递到新的代码: CATransition *transition = [CATransition animation]; transition.duration = 0.75; // using the ease in/out timing function transition.timingFunction = [CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseInEaseOut]; transition.type = kCATransitionReveal; transition.subtype = kCATransitionFromRight; transition.delegate = self; // Next add it to the contai
2 2023-05-06
编程技术问答社区
如何为removeFromSuperview制作动画
我用: 使我的子视图的外观动画 CATransition *transition = [CATransition animation]; transition.duration = 0.3; transition.type = kCATransitionReveal; [webView.layer addAnimation:transition forKey:nil]; [self.view addSubview:webView]; ,但是现在我想删除我的子视图.如何添加动画来执行此操作?像其他撞车一样?什么时候添加?添加之前或之后? 解决方案 好吧,您可以先做动画,然后在animationEndListener调用removeFromSuperView 上进行动画 [UIView animateWithDuration:0.5 delay:1.0 options: UIViewAnimationOptionCurveEaseOut anim
4 2023-05-05
编程技术问答社区
定制UINavigationController动画: CATransition
我有一个UinavigationController.我使VC1成为rootviewController,并从VC1加载VC2,然后将自定义动画从VC1转到VC2.标准.一切都很好. 现在,我想在两者之间进行自定义动画: 总的来说,VC1在VC2在其下方时会脱落.就像一堆纸一样,您滑出第一张纸(VC1),从而揭示下面的纸(VC2). 因此,我尝试的是以下代码,该代码从VC1调用,以便到达VC2.但是有问题: MyVC2 *vctwo = [[[MyVC2 alloc] init] autorelease]; CATransition *transition = [CATransition animation]; transition.duration = 1; transition.timingFunction = [CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseInEaseOu
30 2023-04-06
编程技术问答社区
iPhone-UINavigationController-自定义动画与CATransaction
我正在尝试为uinavigationController创建一个类别,以便我可以将一些自定义动画放在一起.我遇到了这个问题它让我开始了.我提出了以下推动功能: - (void)pushViewControllerMoveInFromBottom:(UIViewController *)viewController { [CATransaction begin]; CATransition *transition; transition = [CATransition animation]; transition.type = kCATransitionMoveIn; transition.subtype = kCATransitionFromBottom; transition.duration = 0.7; [CATransaction setValue:(id)kCFBooleanTrue
18 2022-12-19
编程技术问答社区
使用Swift从底部推升视图控制器
我想使用swift推动一个视图控制器,并为它设置动画,所以它出现在底部并向上移动.我有以下代码才能推送我的视图控制器: let helloTableViewController = self.storyboard!.instantiateViewControllerWithIdentifier("helloTableViewController") as! HelloTableViewController self.navigationController!.pushViewController(helloTableViewController, animated: true) 我发现了另一个问题但似乎无法得到它在SWIFT中工作: CATransition *animation = [CATransition animation]; [animation setDuration:2]; [animation setType:kCATransitionPush];
26 2022-12-19
编程技术问答社区
dismissModalViewController的过渡:从左到右
我正在使用一种不错的方法来解散我的模态视图控制器: [self dismissModalViewControllerWithTransition:2]; 使从左到右的幻灯片过渡,就像导航控制器弹出视图一样. 由于此方法是一种非公共方法,因此Apple不会接受.我如何在我的代码中编程这种动画(从左到右滑动,以删除模态视图,并从右到左右滑动并呈现模态视图)? )? 预先感谢 解决方案 我已经接受了Safecase的答案,但是我想在这里发布我的最终解决方案: 1)要呈现一个模态视图控制器,带有从右到左的过渡,我写了以下方法: -(void) presentModalView:(UIViewController *)controller { CATransition *transition = [CATransition animation]; transition.duration = 0.35; transition.tim
6 2022-12-16
编程技术问答社区
背景中的CATransition白色闪光?
我试图从左侧而不是右侧滑入pushViewController,如下所示: Page14Controller * controller = [[Page14Controller alloc] initWithNibName:@"Page14Controller" bundle:nil]; CATransition* transition = [CATransition animation]; transition.duration = 0.3; transition.type = kCATransitionPush; // transition.type = kCATransitionMoveIn; transition.timingFunction = [CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseInEaseOut]; //kCATransitionMoveI
8 2022-12-14
编程技术问答社区
链接器命令失败,架构i386的符号未定义
我正在尝试执行半页卷发功能.这是我正在使用的代码: #import CATransition *animation = [CATransition animation]; [animation setDelegate:self]; [animation setDuration:1.0f]; [animation setTimingFunction:UIViewAnimationCurveEaseInOut]; [animation setType:(notCurled ? @"mapCurl" : @"mapUnCurl")]; [animation setRemovedOnCompletion:NO]; [animation setFillMode: @"extended"]; [animation setRemovedOnCompletion: NO]; notCurled = !notCurled; 但是我遇到以下错
6 2022-12-12
编程技术问答社区
自定义片段动画显示黑屏
我遇到了一个新问题,在使用自定义 segue 呈现 destinationViewController 时,在转换期间源 ViewController 更改为黑屏,我需要屏幕保持原样(我的设计). UIViewController *sourceViewController = (UIViewController*)[self sourceViewController]; UIViewController *destinationController = (UIViewController*)[self destinationViewController][screenshot][1] CATransition* transition = [CATransition animation]; transition.duration = 0.1; transition.timingFunction = [CAMediaTimingFunction functionWithName:kCA
114 2022-08-09
编程技术问答社区
在Swift中创建一个滑动的分隔线
我正在尝试在两个“滑动"到下一个视图控制器的视图控制器之间创建一个转场/过渡.我所说的“滑动"是指它只移动平移手势的平移量(类似于 Snapchat).如果您能帮我解决这个问题,或者只是为我指明正确的方向,那就太好了. 解决方案 这个效果是通过自定义的交互过渡实现的,在 iOS7 中引入了.这里有一些教程可以查看: 请参阅使用视图控制器的自定义转换.https://developer.apple.com/videos/wwdc/2013/李>http://www.thinkandbuild.it/ios7-custom-transitions/ http://objectivetoast.com/2014/04/14/interactive-transitions/ http://www.teehanlax.com/blog/custom-uiviewcontroller-transitions/ 这个例子给出了许多可以实现的效果的例子.http://www.appc
126 2022-08-09
编程技术问答社区
自定义分离过渡动画
我正在开发一个使用导航控制器的应用程序.我有一个特定的视图控制器,在导航栏中有一个左右按钮,每个按钮都连接到不同的视图控制器.当我按下右键时,我只调用 self.performSegue(withIdentifier: "ToDestination", sender: nil),当我弹回时,我调用 _ = self.navigationController?.popViewController(animated: true). 我的问题是当我按下左键时.我可以按下和弹出,但我希望过渡与右侧按钮相反.由于我按下左键,我希望 segue 从左到右转换,当我弹出时,我希望 segue 从右到左转换. 我可以通过以下方式让转换按照我想要的方式工作: //push let storyboard = UIStoryboard(name: "Main", bundle: nil) let vc = storyboard.instantiateViewController(withIden
128 2022-08-09
编程技术问答社区
CATransition是如何运作的?
我有两个视图,一个是aView,一个是bView,aView上有一个按钮,我点击按钮,我会跳转到bView,请看代码 -(IBAction)jump2b:(id)sender{ CATransition *animation = [CATransition animation]; animation.delegate = self; animation.duration = 0.25f; animation.timingFunction = UIViewAnimationCurveEaseInOut; animation.fillMode = kCAFillModeForwards; animation.removedOnCompletion = NO; animation.type = kCATransitionPush; animation.subtype = kCATransitionFromTop; [bView.view.layer addAnimation:anima
76 2022-08-01
编程技术问答社区
UINavigationController推送转换期间的低帧速率
我有一个 UINavigationController,并从根视图控制器推送到下一个视图控制器.第二个视图控制器相当“重",因为它有大量的初始化和子视图. 我的问题是:过渡动画的表现非常糟糕.基本上,动画的帧速率非常低(我从“推送"动画中总共获得了 3-4 帧). 我尝试了多种不同的技术,包括两种不同的手动动画过渡方法.在所有情况下,动画的前 0.4-0.7 秒都会受到这种低帧率的影响.例如,如果我将过渡时间设置为 5 秒,那么前半秒左右的效果会很差,但动画的其余部分却很流畅. 这让我相信在过渡开始时“某事"正在发生——导致设备以非常低的帧速率进行动画处理. 在我的代码中注入大量 NSLog 语句后,我看到发生了两件事.首先,显然第二个视图在推送期间被延迟加载.我通过在执行推送之前访问 view 属性上的 getter 来解决这个问题.我可以确认这会导致在推送动画开始之前发生所有初始化. 其次,我的应用在转换过程中大部分时间都会收到内存不足的警告.然而,即使
214 2022-07-19
编程技术问答社区
CATransition如何夹在UIView的边界上?
我正在使用catransition来幻灯片的UIView子视图.但问题是,Catransition总是出现在整个屏幕中.它看起来像是一团糟,因为我在窗口中拥有另一个UI元素,它在转换时重叠.如何通过UIView帧限制转换框架?我试图将我的UIView的Cliptobounds设置为Yes.实际上它没有帮助. 解决方案 我不是100%肯定的肯定,但我觉得你错了申请到整个屏幕的carransition.它适用于将动画添加到的视图. 这个想法是您将过渡到您实际想要转换的视图的父级.所以说你有以下结构. UIViewController 视图(UIViewController的主视图) 视图您正在转换 您需要做的是在主UIViewController视图和实际目标视图之间添加"控件"或"容器"视图,使其如下所示: UIViewController 视图(UIViewController的主视图) "容器"视图 视图您正在转换 将转换应用于容器
268 2022-07-19
编程技术问答社区
视图呈现后被UITransitionView封锁
我有一个侧面导航控制器并通过 UIButton 呈现它.当我通过 [self presentviewcontroller: NC animated: YES completion: nil] 直接将此 NC 设置为根视图控制器时,出于某种原因,NC 的菜单侧被 UITransitionView 阻塞,我无法消失. 我附上了 . 是另一个. 我尝试了以下方法: UIWindow *window = [(AppDelegate *)[[UIApplication sharedApplication] delegate] window]; window.backgroundColor = kmain; CATransition* transition = [CATransition animation]; transition.duration = .5; transition.timingFunction = [CAMediaTimingFu