问题标签 [viewwilltransitiontosize]

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 投票
2 回答
861 浏览

ios - iOS 10 自动布局 - 重复调用 viewDidLayoutSubviews

整个 Storyboard 都启用了 AutoLayout。

当我将日志放入viewDidLayoutSubviews()时,我可以看到它被反复调用,并且永不停止。

我在视图控制器中没有任何自动布局红旗。

这可能是什么原因造成的?调试此问题的最佳方法是什么?...找出哪个视图正在苦苦挣扎?


更新

原来是一个 UILabel 制造了这个麻烦。即使它具有所有 4 个约束(x、y、宽度、高度)它似乎正在调用树上的重新布局......

0 投票
1 回答
1572 浏览

ios - iOS - iPad 的 viewWillTransition 中的 UIScreen 边界错误

我必须检查我的设备是否在 iOS 8+ 中改变了方向。

我的做法是:

它在 iPhone 中运行良好,但在 iPadisLand中已经有了新的值,应该是在定向完成之后,所以:

纵向 > 横向:true -> true

横向 > 纵向:false -> false

根据文档,边界应该随着方向而变化,所以它应该有一个之前/之后的边界,不是吗?

UIScreen 主要边界:

此矩形在当前坐标空间中指定,其中考虑了对设备有效的任何界面旋转。因此,当设备在纵向和横向之间旋转时,此属性的值可能会发生变化。

而如果我像这样使用当前根视图控制器的边界,它在 iPhone 和 iPad 上都可以正常工作:

纵向 > 横向:false -> true

横向 > 纵向:true -> false

0 投票
1 回答
866 浏览

swift3 - swift 3 中“viewWillTransition(to:with:)”的无效重新声明

我正在尝试实现 viewWillTransition 所需的方法,但出现了一个奇怪的错误:

'viewWillTransition(to:with:)' 的无效重新声明

我在 swift 2 中使用它没有问题但是 Swift 3 错误

我的代码:

0 投票
0 回答
120 浏览

swift - 过渡到横向时,webView 的高度应该改变

在这里需要一些帮助,请。

我有这个加载 html 文本的 webView。webview 位于其他元素(图像、堆栈视图)下方的滚动视图内。我这样设置它的高度

当我进入视图控制器并滚动浏览它时,一切都很好,但是当我从纵向更改为横向时,滚动视图中没有足够的空间来滚动整个 webView 并且 Webview 的 inscroll 激活。

知道我应该怎么做吗?我已经试过了

像在webViewDidFinishLoad中一样重置 webView 的高度,但它没有用。

0 投票
1 回答
1047 浏览

ios - 在 iPad 模拟器中未调用 viewWillTransitionToSize

我试图通过覆盖来响应 iPad 上的旋转

我注意到它viewWillTransitionToSize在我的物理 iPad 上被调用,但不是在模拟器上,即使使用相同的操作系统版本 (10)。

模拟器上是否有我可以用来使其响应的设置,或者它是模拟器中的错误?如果没有设置,如何使用模拟器在早期操作系统版本上测试我的应用程序?

0 投票
0 回答
263 浏览

ios - 如何在 ResignActive 上停止 viewWillTransition

我在屏幕上有UIViewControllerwithCollectionView和其他按钮,并viewWillTransition在旋转设备时使用。我的问题是,当我最小化应用程序,然后以相同的旋转再次打开它时,它总是会viewWillTransition再次通过。我怎样才能禁用它?我只想在方向改变时使用实现。

0 投票
0 回答
226 浏览

ios - 在 didSelectItemAt indexpath 中调用 viewWillTransition

center的collectionview单元的viewWIllTransition功能如下

我知道在设备旋转之前,上述内容不会得到实施。center但我喜欢didSelectItemAt indexpath 传递 transition.start = self.center

这是因为我希望过渡从单元格中心开始,但在旋转设备之前不会调用 viewWillTransition 函数。那么有没有一种方法可以调用它viewWillTransitiondidSelectItemAt indexpath以便它何时被调用cell取决于selected它所orientation在的位置?

0 投票
2 回答
1570 浏览

ios - viewWIllTransition 没有在多个控制器中被调用

我正在学习开发 iOS 应用程序,目前我有 4 个视图控制器。

在第一个 viewController 中,我使用了viewWillTransition方法在运行时调整 UI。

再次在第4 个 ViewController中,我尝试使用方法viewWillTransition,但它没有在那里被调用。

当我在第一个控制器中评论方法(viewWillTransition)时,它神奇地开始在第四个 viewController中工作。所以我得出的结论是viewWillTransition只能在一个 viewController 中实现,但我需要在多个地方使用它。

解决方法是什么?我该如何解决?我正在使用 Swift4 和 Xcode9。

0 投票
1 回答
423 浏览

ios - 使用 viewWillTransition 更改方向时 UIView.isHidden 不起作用

我试图只用一个视图来改变方向,其余的都固定在肖像上。我在我的 AppDelegate 中设置了一个方法,如下所示

选择剂量视图时,全局变量 gIsDosageView 设置为“Y”。我创建了两个独立的视图,portraitView (375x812) 和 LandscapeView (812x375)。我使用 viewWillTransition 方法来捕捉方向的每个变化,如下所示

当我从主屏幕转到 Dosage 时,它​​会显示正确的屏幕,并且会在两个方向视图之间切换而不会出现问题。但是,如果我转到另一个屏幕并返回“剂量”屏幕,它只会显示在两个方向屏幕中首次加载的屏幕。我已经浏览了代码,它隐藏了正确的屏幕,但这并没有反映在结果视图中。如果我先选择纵向屏幕,它将在纵向和横向之间成功切换,但如果我转到下一个屏幕并返回 Dosage,它只会显示纵向屏幕,无论方向如何,并且似乎忽略 viewWillTransition() 中的代码.

为什么会这样,我错过了什么?

0 投票
1 回答
178 浏览

ios - 如何处理由 viewWillTransitionToSize 函数旋转的 UIPageViewController VC?

我尝试用 3 页创建 UIPageVC。一切都很好,但是当我旋转设备并在此更改页面之后,我会看到仅旋转页面,该页面在旋转时刻被设置在 PageVC 中。

当我旋转任何页面时,如何旋转其他 2 个 VC?

也许我可以在 PageVC 类中做到这一点?

我使用了Swift 4.0,所以我必须使用viewWillTransitionToSizefunc。

感谢所有答案!