问题标签 [custom-transition]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
674 浏览

ios - 在 UIViewControllerAnimatedTransitioning 委托中,transitionContext.fromViewController 为 nil

我有一个UINavigationController设置,并希望使用自定义动画来弹出/推送视图。我之前使用过自定义转换没有问题,但在这种情况下,我实际上在我的 'from' 和 'to' UIViewControllers中找到了 nil 值。

我的设置与此SO Post非常相似

自定义 DataEntryViewController

自定义 BaseTransitionAnimator

子类化的TransitionAnimator

使用上面的方法,fromVCtoVC都是 nil

transitionContext怎么可能没有指向“to”和“from” UIViewControllers的有效指针?

0 投票
1 回答
115 浏览

ios - UINavigationController 自定义过渡动画视图控制器 alpha 值

我想做一个过渡,最后,ToViewControlleralpha 值将类似于 0.7,因此用户仍然可以FromViewController在背景中看到 "。

我为什么要这样做?因为在过渡结束时我需要删除FromViewController.

0 投票
1 回答
507 浏览

ios - 自定义推送转换不起作用,而相同的自定义当前转换是

我已经按照本教程观看了关于这个主题的 WWDC 视频,但我找不到我的答案。

我的代码中有几乎相同的转换。当我将其作为呈现视图而不是作为推送视图时,它工作得很好。

它应该将推送视图的快照从 CGRect 动画到全屏,反之亦然。

这是我UIViewControllerAnimatedTransitioning班级的代码:

然后,我尝试使用 2 种方式展示一个新的 View Controller:展示它和推送它。

FromViewController的子类UINavigationControllerDelegateUIViewControllerTransitioningDelegate.

FromViewController呈现ToViewController效果很好):

FromViewController类推(这不起作用ToViewController):

push时,委托方法被调用,并且 ZoomingTransitionController 执行其代码正常(animateTransition直到最后没有明显问题)。但在屏幕上,任何时候都不会显示快照视图。ToVC 在转换持续时间之后出现,但同时没有任何其他内容。

我不知道如何调试这个......你有什么想法吗?

谢谢!!

0 投票
0 回答
583 浏览

ios - 打开带有动画的视图控制器

我想用右下角方形按钮的原始框架打开一个带有动画的视图控制器:

在此处输入图像描述

我想移动视图控制器的顶部和底部。

我试图实现这一点,但这不是很好,我不知道如何隔离不同的边缘:

你知道我怎么做吗?

0 投票
1 回答
731 浏览

ios - Swift 3:UIViewControllerTransitioningDelegate 停止工作

在我的应用程序中,我有几个用于自定义转换的类。在 Swift 3 之前,一切都运行良好。但是,在更新到 Swift 3 之后,func presentationController(forPresented presented: UIViewController, presenting: UIViewController?, source: UIViewController)总是显示为 nil。它应该返回启动转换的 UIViewController。一切都与以前的 Swift 版本完美配合。我错过了什么吗?

0 投票
0 回答
258 浏览

ios - 带有表格视图的自定义交互式过渡

我创建了自定义推送/弹出交互式转换,但我不明白如何同时处理这种转换和表格视图滚动。

为了处理自定义弹出动画,我添加了平移手势

接下来我处理这个锅

然后内部动画师符合UIPercentDrivenInteractiveTransitionUIViewControllerAnimatedTransitioning我做变换动画。我尝试通过平移手势从 VC_2 弹出导航到 VC_1。

问题是添加平移手势表视图后不滚动。我认为这是因为 2 个手势识别器(我自己的和 UIKit 表格视图的识别器)。实际上,当表格向上滚动时,我希望我自己的平底锅以交互方式弹出我的 VC_2。

唯一的想法是

但是在弹出表视图偏移量发生了奇怪的变化:我的意思是当平移手势移动时表滚动太多(移动 20 像素,偏移量更改为 500 像素)。

处理这个问题的最佳方法是什么?您可以在 Google 的 Inbox 应用程序中看到这样的动画 - 从电子邮件弹出到列表。

0 投票
0 回答
82 浏览

ios - 自定义滑动返回的框架(Twitter 喜欢)

我想实现自定义UINavigationController弹出过渡。交互式滑动返回类似于 iOS 上的 Twitter 正在做的事情。

由于某些技术原因(超出问题的范围),我不能使用UINavigationController.

Swift 或 Objective-c 语言无关紧要。

0 投票
0 回答
593 浏览

ios - 使用自定义转换委托呈现视图控制器在完成动画后获得黑屏

我的目标是从具有透明背景的第一个视图顶部为第二个视图控制器视图设置动画。

我正在尝试从第一个视图控制器呈现第二个视图控制器。

创建了一个 UIViewControllerAnimatedTransitioning 子类,实现的代码是

使第一个视图控制器符合 UIViewControllerTransitioningDelegate 并实现以下

在First View Controller的按钮动作中实现了Presentation逻辑

一切正常,但在动画完成后,我得到的是黑屏而不是透明的。

注意:我在第二个视图控制器中有一个按钮操作,如果我删除自定义类黑屏中的行 transitionContext.completeTransition(true) 没有得到但按钮操作没有调用。

0 投票
1 回答
213 浏览

ios - 为什么 UIViewControllerContextTransitioning 返回可选项?

这种方法什么时候可以UIViewControllerContextTransitioning返回 nil?

如果可能,您应该如何处理?如果您无法检索动画中涉及的视图控制器,您能否以某种方式默认系统转换?我一直假设强制解开这些值是安全的。

0 投票
0 回答
371 浏览

ios - 从自定义 UIPresentation 控制器更改呈现的导航视图控制器的框架不更改导航控制器子项的边界

我正在展示一个带有自定义转换和自定义演示控制器的导航控制器。演示控制器监听键盘,并相应地更改呈现的视图控制器框架。

在第一个屏幕键盘处于活动状态,因此呈现的视图控制器使用较小的框架 在第一个屏幕键盘处于活动状态,因此呈现的视图控制器使用较小的框架

我为导航控制器设置了红色背景。当第二个屏幕出现时,它会关闭键盘,并增加呈现的视图控制器的框架。尽管导航控制器框架根据需要更改,但它不会更改其子视图的框架

我为导航控制器设置了红色背景。 当第二个屏幕出现时,它会关闭键盘,并增加呈现的视图控制器的框架。 尽管导航控制器框架根据需要更改,但它不会更改其子视图的框架

知道如何解决这个问题