问题标签 [uimodalpresentationstyle]

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 回答
1792 浏览

ipad - UIModalPresentationFormSheet,缺少暗淡

我正在尝试使用UIModalPresentationFormSheet视图样式在 iPad 应用程序中显示模态视图控制器。我正在寻找类似于邮件应用程序的新消息UI/动画的东西。

有两件事行为不正确: 显示的模态 viewController 始终动画到 y=0,即到视图的最顶部,而不是像在邮件应用程序中那样位于状态栏下方的一些像素。

文档说:

UIModalPresentationFormSheet 呈现的视图的宽度和高度小于屏幕的宽度和高度,并且视图在屏幕上居中。如果设备处于横向且键盘可见,则视图的位置会向上调整,以使视图保持可见。所有未覆盖的区域都变暗,以防止用户与其交互。

但是,在我的情况下,没有调光,我仍然可以与 modalViewController 下方的 parentView 进行交互。

呈现 modalView 的控制器我这样做:

在呈现的 viewController 中,我这样做:

我希望有人可以帮助我。

我需要在父级和 modalViewController 上设置一些其他属性吗?

viewDidLoad 不是进行此设置的正确位置吗?

提前致谢:)

0 投票
1 回答
4559 浏览

uiviewcontroller - UIModalTransitionStyle 和 UIModalPresentationStyle 有什么区别?

对于 UIViewController,我们有UIModalTransitionStyleUIModalPresentationStyle

问题是它们有什么区别?

0 投票
1 回答
1859 浏览

ipad - iPad - 在 UIModalPresentationFormSheet 模式下关闭模式视图控制器的键盘

在我的 iPad 应用程序中,我想在没有键盘的UIModalPresentationFormSheet模态模式下呈现一些视图控制器。

我用它来显示帮助作为示例。

目前,我使用在 stackoverflow 答案之一上找到的代码将其关闭:

但我担心苹果会在审批过程中拒绝它,因为它使用私有 API

我可以看到Apple 开发人员在 GarageBand 帮助屏幕中实现了这一点,因此它必须是执行此操作的“正确”方式。

非常感谢帮助,因为我们的客户不想因为这样一个轻微的限制而改变设计理念。

更新:就在今天我被 AppStore 拒绝了:

我们发现您的应用使用了一个或多个非公共 API,这不符合 App Store 审核指南。不允许使用非公共 API,因为如果这些 API 发生更改,可能会导致糟糕的用户体验。

我们在您的应用中发现了以下非公共 API:

activeInstance 解除键盘

所以请不要听从这个建议How to HIDE the iPad keyboard from a MODAL view controller?

0 投票
2 回答
3183 浏览

objective-c - setModalTransitionStyle 和 setModalPresentationStyle,设置视图大小

我创建了一个 UIViewController(一个自定义日历,其大小为 550x440),当我按下按钮时,它必须出现;问题是,如果我使用 setModalPresentationStyle 和 setModalTransitionStyle 它们会改变我的视图大小;我可以设置这些演示文稿的大小吗?

0 投票
2 回答
1539 浏览

ios - iPad 模态 UIViewControllers 位置

如何以模态方式将此 ViewController 定位在详细视图上?我希望它正确对齐,以便您可以看到导航部分变灰。

我还检查了 MyModalViewController 如果我设置了视图掩码而我没有,它也没有从 Nib 获取魔法值。

在当前之前调整框架(使用 modalvc.view.frame)什么也不做。

在现在之后调整框架似乎会产生疯狂的结果,我只需要它在横向上超过一半宽度......纵向是正常行为。

编辑
图片让人们感到困惑,所以我把它拿出来,我不希望模态视图成为屏幕的大小,我想保留它 UIModalPresentationStylePageSheet 但它的 ORIGIN 向右移动,以便它覆盖横向的详细视图部分

0 投票
1 回答
510 浏览

iphone - 更改模态 UIViewController 的动画样式?

我想更改 presentModalViewController 的默认动画(从下到上滑动),使其与 UINavigationController 中的动画相同(从右到左滑动)......这怎么可能?

查看 uimodalpresentationstyle 的文档时,我找不到默认动画设置

0 投票
3 回答
5398 浏览

objective-c - iPad: UIModalPresentationFormSheet fails on landscape mode

We've the next problem in our iPad version.

I've a NavigationController inside a UITabBar. I want to show a Form with a look&feel similar than the e-Mail form.

I use the same code to show a model centered:

This code works perfectly on portrait mode, but on landscape the view appears partially out of the screen ... and I didn't found yet the way to solve it.

I test some of the solutions I found here ...

And try to add the next lines after preset the model view to resize it, but doesn't work it out

Any suggestion?

Thanks,

Ivan

References in StackOverflow:

0 投票
1 回答
2165 浏览

objective-c - presentModalViewController 全屏模式问题

我正在尝试在我的应用程序中展示这个 modalViewController,它需要是全屏的。

这就是我调用 ModalViewController 的方式。

navController.modalPresentationStyle 适用于除全屏模式之外的所有内容。我已经在 ViewDidLoad 中记录了 modalview 的 self.view 并且它具有正确的尺寸(包括对状态栏的调整)

NSLog (modalviewcontroller.view) => < UIView: 0x7d173a0; 帧 = (20 0; 748 1024); 自动调整大小 = W+H;层=>

NSLog (modalviewcontroller.SomeView => < UIView: 0x7d154a0; frame = (0 0; 1024 660); layer = >

我在这里做错了(显然),但我似乎无法弄清楚它是什么。我一直在寻找解决方法,但到目前为止,没有一个选项是答案。如果有人知道这里的问题是什么,我非常想知道。

提前致谢。

//---编辑---//

好的,现在我构建了这个原型,并且我确认这段代码可以按照我的意愿工作。然而,我似乎无法在我更大的架构中实现同样的东西。

--------.h (mainVC)

------------.m (mainVC)

------------.h (modalVC)

--------------.m (modalVC)

//---编辑 2 ---//

我已经完成了上面的代码并尝试将它添加到主 mainVC 窗口。它可以工作,但不符合自动调整大小。然而,即使自动调整大小工作正常,这(有点)是一个肮脏的修复,而不是我想使用的正确解决方案。这也不是窗口显示自己的顺序。与此同时,我正在使用其他(工作)演示风格之一。但我仍然想知道解决方案..

..如果有人知道那是。

0 投票
2 回答
834 浏览

ios - 在模态视图表单下更新视图

所以,我有一个按钮视图。我点击此按钮并出现样式为“表单”的模式视图。在那里我进行了更改,因此必须更改我们第一个带有按钮的视图(现在位于模态视图后面)的背景颜色。问题是,如何做到这一点?

0 投票
3 回答
6965 浏览

ipad - 如何使用 UIModalPresentationPageSheet 调整 modalViewController 的大小

我有一个使用 UIModalPresentationPageSheet 显示的模态视图控制器。问题是它的默认大小对于我的内容来说太大了:所以我想调整它的框架大小以根据我的内容进行相应的调整。

有谁知道这样做的方法/技巧?

谢谢。