问题标签 [ios13]

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

segue - 无法连接@IBSegueAction

我有一个UIButton包含以下代码的单视图控制器:

根据Apple 的文档,这是 a 的正确签名@IBSegueAction,并且可以编译,但是我无法@IBSegueAction通过从情节提要场景拖动到助手编辑器来将按钮连接到。

我可以毫无问题地连接到其他渠道或行动。

有什么想法吗?Xcode 11 错误还是我做错了什么?


更新

简而言之,Apple 的文档说……</p>

在源视图控制器上创建从 segue 到 @IBSegueAction 方法的连接。在支持 Segue Actions 的新 OS 版本上,将调用该方法……IBSegueAction 方法最多需要三个参数:编码器、发送者和 segue 的标识符。第一个参数是必需的,如果需要,可以从方法的签名中省略其他参数

我无法完成第一步(创建连接)

0 投票
0 回答
535 浏览

nfc - 是否可以使用 NFCVASReaderSession 读取 Apple Wallet 通行证?

我正在尝试使用NFCVASReaderSessioniPhone XR 在 iOS 13 beta 上使用新的 API。

NFCVASReaderSession.readingAvailable返回 false,但是当我调用session.begin()它时会启动扫描 UI。

几个问题:这个工作是否需要额外的权利?或者这些应该有效吗?.

我启用了 NFC 的 Apple Wallet VAS 通行证,并已将其配置NFCVASReaderSession为目标正确passTypeIdentifier但无济于事。这是否应该与启用 NFC 的 Apple Wallet 通行证一起使用,或者有人对它的用途有任何理论吗?

0 投票
1 回答
4931 浏览

ios - iOS 13 中 UISplitViewController 的详细信息窗格中的新 UINavigationBar 外观

在 iOS 13 下,如果您在导航控制器中设置可滚动的根视图控制器(例如 UITableViewController),然后将该导航控制器放在 UISplitViewController 的详细信息窗格中,则当可滚动内容为在顶部。

您可以通过基于 Master/Detail 模板创建一个新的 iOS 项目来看到这一点。然后修改情节提要以在详细信息窗格的导航控制器中使用 UITableViewController。将设备/模拟器置于 Light Appearance 模式(它比 Dark 模式更能显示问题)。运行应用程序并注意导航栏区域与表格视图背景颜色相同。现在向上滚动表格视图,导航栏颜色变为标准浅灰色。让表格视图返回顶部,导航栏颜色再次消失。

我只在拆分视图控制器的详细信息窗格中看到了这一点。

您如何关闭此“功能”以使导航栏看起来正常,就像在拆分视图控制器的详细信息窗格之外的其他任何地方使用的所有其他导航栏一样?

UISplitViewController或没有相关的 API 更改UISplitViewControllerDelegate。两者都没有UINavigationController

经过一番挖掘,我找到了一种解决方法,但我很想找到一种方法来避免这样做。

该类UINavigationBar现在具有一些用于设置其外观的新属性。奇怪的是,这些都没有在UINavigationBar.

iOS 13 中有三个新属性:

  • standardAppearance
  • compactAppearance
  • scrollEdgeAppearance

这三个都是 type UINavigationBarAppearance

默认情况下只设置第一个。

即使scrollEdgeAppearancenil,拆分控制器的详细信息窗格的行为就好像已将其backgroundColor设置为clear颜色一样。

所以解决方法是viewDidLoad在导航控制器的根视图控制器的方法中添加以下行:

为什么仅在这种情况下才需要这样做?除了添加此代码之外,还有更正确的解决方案吗?

我注意到 Apple 的所有应用程序(至少是邮件、便笺和文件)似乎都没有使用此“功能”。

0 投票
1 回答
2172 浏览

swift - 如何以编程方式设置 iOS 13 字形

从 iOS 13 开始,Apple 提供了一系列可以“在任何可以使用图像的地方”使用的字形。

您可以使用 SF 符号来表示各种特定位置的任务和内容类型,例如导航栏、工具栏、标签栏、上下文菜单和主屏幕快速操作。在您的应用程序的其余部分,您可以在任何可以使用图像的地方使用符号。

因此,我希望此代码将字形设置为 aUIBarButtonItem的图像:

但是由于找不到图像,该应用程序以 nil 崩溃。
我尝试附加.png到图像名称,但没有任何区别。

我们如何以编程方式设置 iOS 13 字形?

  • 注意:我安装了 SF Symbols 应用程序并成功地将字形设置为Storyboard中 UIBarButtonItems 的图像。
0 投票
1 回答
20691 浏览

uikit - 在 Swift 中将 SwiftUI 视图添加到 UIKit UIView

我曾尝试将addSubviewSwiftUI 视图转换为 UIView。self.view.addSubview(contentView)

错误:无法将“ContentView”类型的值转换为预期的参数类型“UIView”

请帮我实现这个用户界面。

0 投票
1 回答
2027 浏览

swift - 嵌入在 NavigationButton 中的自定尺寸图像问题。它变成蓝色

我有一个奇怪的问题,如果我制作的可调整大小的图像(自定义视图)不在 NavigationButton 中,那么它可以正常工作,但如果它在其中,那么图像的大小仍然很好,但它变成了全蓝色。有谁知道出了什么问题?

当未嵌入 NavigationButton 时,一切正常。当嵌入 NavigationButton 时,图像会被蓝色填充。

任何人都知道如何解决它?谢谢!!!

0 投票
0 回答
372 浏览

swift - 有没有办法打印 NFCISO7816APDU 生成的 APDU 命令

我想调试下面的代码,看看它产生的原始 APDU 是什么。我的意思是从头到 Le 参数一个字节一个字节。

0 投票
2 回答
9986 浏览

swift - 永远不会调用 TextField onCommit

我已经使用 SwiftUI 一周了,作为每个人,我都在努力确定不起作用的东西是错误还是我的误解。

我正在使用 TextField 视图,但从未执行onCommit闭包。onEditingChanged工作正常。当文本字段获得焦点时,它以 true 调用,当它失去焦点时,它以 false 调用。

然而, onCommit闭包永远不会执行。根据代码中可用的小文档:

onCommit:当用户在获得焦点时执行操作(通常是返回键)时执行的操作TextField

这是代码:

理想情况下,我想将焦点从接收 RETURN 键的文本字段移开,并将焦点放在以下字段上。使用 UITextField 和 resignFirstResponder() 和 becomeFirstResponder() 很容易。

我已经设法使用UIViewRepresentable嵌入旧的 UITextField,但这不是这篇文章的重点。我真的希望让它在纯 SwiftUI 代码中工作。

如果我可以让 onCommit 工作,我应该放什么来实现我的目标?

更新:似乎问题只存在于 iOS,而不是 macOS,它似乎工作正常。

更新 2:这是在我的机器上运行建议代码的结果的视频。我确实向Apple提交了一个错误......我们拭目以待。

在此处输入图像描述

0 投票
15 回答
48847 浏览

ios - 如何在 iOS 13 上更改状态栏背景颜色和文本颜色?

随着iOS 13的到来, statusBar 的视图不再可以通过以下方式访问:

由于:

由于未捕获的异常“NSInternalInconsistencyException”而终止应用程序,原因:“在 UIApplication 上调用 -statusBar 或 -statusBarWindow 的应用程序:必须更改此代码,因为不再有状态栏或状态栏窗口。在窗口场景中使用 statusBarManager 对象。

但目前尚不清楚它应该如何用于更改颜色,因为keyWindow?.windowScene?.statusBarManager它似乎不包含任何与之相关的内容。

我正在用 (iOS 10, *) 兼容性编译我的代码,所以我打算继续使用 UIKit。

关于这个主题的任何想法?

0 投票
2 回答
842 浏览

ios - Xcode 11 Beta 和 Carthage 引导程序

我正在尝试使用 Xcode 11 编译我的项目。如果我构建项目,我会收到以下消息:

Swift 5.0 编译的模块不能被 Swift 5.1 导入

我试图重建运行的依赖项,carthage bootstrap但我从 carthage 收到另一条错误消息:

无法确定本地 Swift 版本。

在 Xcode 11 beta 上运行使用 swift 5 构建的应用程序的最佳流程是什么?(考虑到我使用 carthage 作为依赖管理器?)