问题标签 [uipopoverpresentationcontroller]

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

ios - `UIViewController.present` 完成处理程序被立即调用

我正在使用 Xcode 10 Beta 6,所以这可能只是一个错误。


我正在尝试将视图控制器 ( colorPickerController) 呈现为弹出框。在该视图控制器中,我将能够设置一些属性,一旦弹出框被解除,我想读取这些属性。

这是代码:

代码

在第 93...97 行中,我定义了一个完成处理程序。
在第 99 行,我介绍了colorPickerController模态,包括完成处理程序。


运行代码时,颜色选择器控制器已成功显示在弹出窗口中。但是当我在弹出框之外点击(将其关闭)时,没有调用回调。

我想也许 aUIPopoverPresentationController不会“正常”关闭,所以我尝试手动关闭弹出框,然后它自己会这样做,方法是调用dismisspopoverPresentationControllerShouldDismissPopover第 110 行)。

现在这仍然不起作用,所以我设置了一个如图所示的断点,以检查是否甚至调用了委托方法。
那时我注意到,在运行应用程序时,完成处理程序在弹出窗口出现时被调用,而不是在它关闭时被调用。我什至在到达断点之前
就登录了控制台。Completion handler was called.

这怎么可能?

0 投票
0 回答
45 浏览

ios - 如何获取 UIActivityViewController popoverPresentationController 的大小?

如何获取 UIActivityViewController popoverPresentationController 的大小?

在此处输入图像描述

0 投票
0 回答
260 浏览

ios - 设置 UIPopoverPresentationController 的 barButtonItem 时弹出箭头偏离中心

我的UIBarButtonItem导航控制器上有一个图像:

当点击我做:

然后调用UIPopoverPresentationControllerDelegate函数:

我在那里<<=====设置了barButtonItem. 我现在希望弹出箭头指向该项目的中心。但它没有:

箭头从中心向右

查看视图层次结构(下图),我的图像在矩形条形按钮中水平居中。它根本不在左侧,这可以解释弹出箭头未对齐的原因。

查看层次结构

任何想法我在这里缺少什么,或者如何纠正?

0 投票
2 回答
249 浏览

ios - 当弹出窗口在屏幕上时,UIBarButtonItem 未脱色/禁用

UIBarButtonItems我的导航控制器上有两个:

当点击infoItem我做:

然后调用UIPopoverPresentationControllerDelegate函数:

即使我设置passthroughViewsnil两次,UISegmentedControl当弹出框出现在屏幕上时,它也不会脱色并且仍然可以点击。

如果显示任何其他弹出框,则UISegmentedControl行为正常:已脱色且不可点击。

我在这里想念什么?

0 投票
1 回答
728 浏览

ios - 如何在 Swift 中为视图集合中的每个单元格添加弹出框

我用文字写了一个应用程序(一种游戏)。所以,我有 WordsVC CollectionView(每个单元格都是一个单词)。当长按单词(单元格)时,我想在单元格旁边显示带有翻译的弹出框。

但我无法将 segue 添加到单元格(Xcode 给我一个错误,有点“无法编译”)。所以,我从 TraslationVC CollectionView(popover) 开始。这就是问题,因为弹出窗口会在视图集合的左上角弹出(我需要在点击的单元格旁边)。

通过搜索,我无法很好地回答。我能做些什么来实现它?

这是一些代码:

WordsVC 中的 segue 准备:

在 WordsVC 中设置非模态样式:

Segueing(来自 WordsVC):

并在 TranslatingVC 中设置弹出框的大小:

这个怎么做?

0 投票
3 回答
1325 浏览

swift - 如何在 Swift 中的弹出框及其箭头上添加边框颜色?

我的应用程序中有以下弹出窗口:

在此处输入图像描述

但我希望它看起来像这个编辑后的图像(请注意,即使箭头也有边框):

在此处输入图像描述

这在当今可能吗?我已经在里面尝试了以下内容UIViewController

但这对箭头不起作用。这有什么转机吗?

0 投票
1 回答
127 浏览

ios - PopoverPresentationController 在触摸外部时不会被解雇

我有一个 PopoverPresentationController,它从下面的按钮显示。

在此处输入图像描述

在此处输入图像描述

我想在单击外部弹出窗口时关闭此弹出窗口。单击弹出窗口内部时不应关闭它。下面是我的代码。

我怎么做?

0 投票
1 回答
1101 浏览

ios - AdaptivePresentationStyle 不触发紧凑型(iPhone)设备上的 UIPopoverPresentationControllerDelegate

我试图将一个显示UIViewController为另一个弹出窗口。为此,我建立了以下...

但是,新的 VC 在紧凑型设备上始终显示为全屏模式演示,而不是实际的弹出框。根据我在这里这里阅读的内容,这是正常行为,但应该可以通过委托进行定制。

我已将呈现的 VC 声明为 implementation UIPopoverPresentationControllerDelegate,将其设置为委托,并实现所需的方法;但是,委托方法永远不会被调用。这意味着无论如何,“弹出框”仍然以模态显示。

任何的建议都受欢迎。

其他一些标注:

  • 如果在它之前添加了一个标记,viewControllerForAdaptivePresentationStyle 会被调用@objc,但这对其他人不起作用。
  • Xcode 对每一个都给出警告:Instance method ... 几乎符合协议 'UIAdaptivePresentationControllerDelegate' 的可选要求... 但是,方法签名是 100% 匹配的。不确定这是否是这个 bug的一个实例,有人说它仍然存在于 Xcode 10.1 中。

谢谢。

实现的委托功能:

0 投票
1 回答
31 浏览

ios - iOS:为什么媒体(图像、视频或 pdf)的份额在 iPhone 上有效,而在 iPad 上无效?

我有一段代码在 iPhone 上运行良好,但在 iPad 上却不行。就像窗户在那里但不可见......

在此处输入图像描述

iPad 上不显示该窗口。

任何想法?

0 投票
0 回答
161 浏览

ios - 用于 iPad 的 UIViewController modalPresentationStyle 弹出框和用于 iPhone 的自定义

我使用创建了一个自定义演示文稿,UIPresentationController但我只想将此演示文稿用于水平紧凑布局,并且我想用弹出框替换我的自定义演示文稿以进行水平常规布局,并且当水平特征集合在紧凑和常规之间更新时,我想要我的演示文稿样式在两者之间更新。

UIPresentationController课堂上adaptivePresentationStyle: UIModalPresentationStyle,据我所知,它被用作水平紧凑布局的演示风格。我可以返回custom,但我不确定如何使用我的另一个UIPresentationController和设置UIViewControllerTransitioningDelegate