问题标签 [ipados]
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.
ios - 监视文件更改时打开的文件过多
我正在为 iPad 开发一个基于文档浏览器的应用程序。我一直在使用SKQueue来监视对文件的更改,以确保当用户在文档浏览器中执行操作时它们的元数据保持最新。启动监控的代码:
我开发了自己的逻辑来响应来自此队列的通知,但在应用程序运行时我不会从队列中删除任何项目。
问题 - 似乎当观看的项目数量超过 200(文件和文件夹)时,系统会遇到问题,并且控制台会报告错误 24:打开的文件过多。之后,不能执行任何文件的读/写。
根据我从搜索中收集到的信息,iOS 和 iPadOS 似乎不允许同时访问超过 256 个文件描述符,这意味着 GCD 监控文件更改的方法将受到同样的限制.
有没有办法监控不受这种限制的文件更改?还有其他建议吗?
ios - 如何以编程方式强制浮动键盘?
有没有办法以编程方式强制键盘在出现时浮动?我正在尝试在 iPad 应用程序上为UITextField
. 原因是在浮动模式下它会显示小数点,这正是我想要的。
ios - 如何使用 UIPointerInteraction for Collection View Cells 实现视差效果
我正在尝试实现类似于 tvOS 的视差效果。当用户指向一个单元格时(通过 iPadOS 中的鼠标或触控板),我希望光标采用单元格的形式。
我阅读并遵循了 Apple 的相关文档,请参见此处:https ://developer.apple.com/documentation/uikit/pointer_interactions/integrating_pointer_interactions_into_your_ipad_app
但是,我无法使这种效果在细胞上起作用。它适用于我添加到屏幕的随机 UIView,但绝不适用于 UICollectionView 单元格。
在这里,我将添加的 UIPointerInteraction 功能的代码粘贴到了一个基本的 UICollectionView 控制器中。在此示例中,单元格确实识别出它被指向。但是,它不会产生正确的效果(光标不会变形为单元格的大小。
注意:我在collectionView的cellForItemAt方法中调用了cell.addInteraction(UIPointerInteraction(delegate: self)) 。
ios13 - 在 iOS/iPadOS 13 上手动保存场景 NSUserActivity
我已经使用 实现了 iOS/iPadOS 13 状态恢复NSUserActivity
,主要是因为我的应用程序支持多个场景。
问题是,当我运行具有两个并排场景的模拟器并通过重建活动强制重新启动应用程序时,不会保存活动,并且重新启动时 UI 没有正确恢复。
另一方面,如果我首先返回 iPad 主屏幕,然后强制重新启动应用程序,则活动会正确恢复。
这是否意味着我的应用程序崩溃会阻止保存这些活动,从而导致重新启动时出现不一致的 UI 状态?
我怎么能定期“强制”储蓄活动(被stateRestorationActivity(for scene:)
调用)?
ios - SwiftUI ScrollView、GeometryReader 和 Button = 奇怪的行为
在过去的 2 个小时里,我一直在尝试让按钮的 ScrollView 工作,更具体地说,使用 GeometryReader 来确定其大小的按钮的 ScrollView。此外,所有这些都放置在 NavigationView 中。
有奇怪的行为,比如按钮没有执行它的动作,没有注册点击,当放置在一个 VStack 中的 HStack 中以获得类似网格的结构时,我只能点击具有预期效果的第一行按钮,其他按钮都是反应迟钝。如何正确构建所有这些视图?
ios - 如何分发 Catalyst 应用程序?
如何分发 Catalyst 应用程序?该应用程序支持iOS
:iPadOS
和macOS
。我应该在 AppStore Connect 中选择什么来创建新应用程序?
ios - 如何在启动故事板中为纵向和横向创建不同的布局?
当 iPad 处于水平或垂直方向时,我的应用程序具有不同的布局。它使用视图控制器的大小来确定其方向——无论设备的实际方向如何(例如,分屏横向模式下的 iPad Pro 将处于“纵向”模式,因为每一半的高度大于其宽度。
我正在尝试为显示其“空白状态”的应用程序创建一个启动故事板。但是,我在为情节提要中的水平和垂直模式设置不同的布局约束时遇到了困难。
在 Xcode 11.4.1 中,我只看到大小类和色域作为激活/取消激活布局约束的标准。同样,堆栈视图的轴只能通过大小类来区分。但是,iPad 在纵向或横向显示时具有相同的尺寸等级。尺寸等级仅在应用程序处于分屏或滑过模式时更改。
有没有办法根据视图的方向以不同的方式布局启动故事板?
这不是这个问题的重复,尤其是作为Launch Storyboard,无法进行编码(因为此时应用程序尚未运行)。
gesture - 获取自定义 UIView 以响应两指触控板滚动手势(或鼠标滚轮)
我有一个带有自定义 UIView 的 iPad 应用程序(在 C# 中),它允许通过触摸和 Apple Pencil 手写笔触摸进行输入。我正在尝试集成对触控板/鼠标间接的支持(光标,或苹果称之为“指针”)。
我使用 HoverGestureRecognizer 进行悬停工作。我使用正常的触摸开始/移动/结束/取消事件进行右键单击和控制单击工作并检查 .type == .indirectPointer ,然后检查是否设置了 event.ModifierFlags 中的控制键修饰符,或者是否设置了 event.ButtonMask == 次要的。
我花了很多时间搜索 Apple Developer 网站上的文档,从这里开始并扩展:
当发生两指触控板滚动(或鼠标滚轮滚动)时,不知何故我无法在我的代码中找到系统调用的 API 。(在另一个是滚动视图的视图上,当我进行两指滚动时,我可以获得滚动视图的滚动事件,因为这是 iPadOS 13.4+ 内置的滚动视图,但我的自定义视图不是滚动视图,它里面只有一些可滚动的区域。)
我尝试过的事情:
- UISwipeGestureRecognizer。两指触控板滚动手势没有任何要求。
- UIPanGestureRecognizer。没有什么。
- 子类化 UIScrollView 并添加一个 UIScrollViewDelegate,只是为了看看它是否可以工作......什么都没有。
- 继承 GestureRecognizer 并添加它,然后覆盖 ShouldReceive(UIEvent evt) 但从未调用过。
iPadOS 13.4+ 将触控板两指滚动手势转换成什么?我可以把它当作某种事件吗?上面链接的文档非常令人失望,但它提到了 UIEvent.EventType.scroll 但没有提到系统将如何、何时或在何处使用该类型的事件调用我的任何方法。挺气人的。他们应该更清楚地说明这一点。
欢迎使用 Swift 或 C# 回答。
ios - iPadOS:防止 UIContextMenuInteraction 在不使用指针时触发
UIMenu
对比UIContextMenuInteraction
对比UIPointerInteraction
UIContextMenuInteraction
我正在尝试以与“文件”或“页面”应用程序相同的方式进行设置:
- (长)点击空白处任意位置显示黑色横线
UIMenu
- 使用指针在空白区域的任意位置单击辅助(右键/控制)显示上下文菜单
请参阅下面附加的 GIF 上的演示。
我能够设置UIContextMenuInteraction
并UIContextMenuInteractionDelegate
返回UIContextMenuConfiguration
我想要显示的项目。
小黑也是一样UIMenu
,我可以使用UILongPressGestureRecognizer
并显示菜单UIMenuController.shared.showMenu
。
但是,我无法阻止在长按视图时UIContextMenuInteraction
触发和显示,UITargetedPreview
现在似乎有一种方法可以通过UITouchType
提供给UIContextMenuInteractionDelegate
.
我也找不到如何以编程方式显示上下文菜单,没有UIContextMenuInteraction
. 有没有办法做到这一点?
问题
这在 Files.app 中是如何实现的?
ios - 如何在 iPad 上收听浮动键盘显示和隐藏通知?
如何在 iPad 上收听浮动键盘显示和隐藏?UIKeyboardWillShowNotification
或者UIKeyboardWillHideNotification
不会被召回。主要代码如下: