问题标签 [swift4.2]

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

swift - IUO 作为 Swift 4.2 中的字典键

以下代码在 Swift 4.2 (Xcode 10) 中的行为不再与在 Swift 4.1 (Xcode 9.4.1) 中的行为相同:

在 Swift 4.1 中,val接收字典值(“value”),而在 Swift 4.2 中它是 nil。

如果我删除隐式展开的可选(IUO)或将字典声明为,问题就会消失[String:Any],所以两者

, 和

导致val最终持有字符串“value”。

这是 Swift 4.2 中的预期行为,还是编译器错误?

问我有一个庞大的代码库,其中键和字典都来自Objective-C代码,这有点难以改变。所以我想知道这种行为变化是否是永久性的,我应该开始更新代码中使用这种模式的许多地方,或者等到 Xcode 10 的稳定版本发布。

0 投票
1 回答
58 浏览

swift - 收到有关 API 'set value for key on a NSObject' 折旧的错误

收到有关 API 'set value for key on a NSObject' 折旧的错误

在此处输入图像描述

我正在将我的代码升级到 Swift 4.2 。在运行时升级时,代码此时崩溃。

0 投票
1 回答
53 浏览

ios - 背景颜色不改变?

我已经发送了一个颜色名称以及来自不同 ViewController 的委托,并且数据成功接收(打印了正确的颜色)。然后,如果我想更改视图本身的背景颜色,那么使用我收到的那个名称,但它不起作用。

并且代码执行

更改背景颜色后为 nil 且视图为黑色

在 colorviewController 这是我要发送的委托函数

顺便说一句,我正在使用 swift 4.2

0 投票
3 回答
1666 浏览

ios - 检索数据后集合视图未重新加载

情况:我正在从 Firebase 中提取数据。提取数据后,我想更新/重新加载我的 collectionView 表。

问题:collectionView 不更新。这是带有一些解释的代码。

  1. 函数 getAllProducts 工作正常。如果我在闭包中打印 allProducts.count,我会得到正确的数字 (3)。
  2. 如果我在闭包之外打印 allProducts.count,我的计数为零。
  3. 我尝试将 getAllProducts 函数放在 viewWillAppear 中,但没有解决问题

    扩展 FeedTableViewController: UICollectionViewDataSource, UICollectionViewDelegate {

    }

好消息是,当我单击任何项​​目时,会在出现下一个 viewController 时选择正确的产品。

所以唯一的问题是如何在从 Firebase 检索数据后让 collectionView 重新加载?很感谢任何形式的帮助

这是用于从 Firebase 检索所有数据的 getAllProducts 函数。

0 投票
1 回答
160 浏览

swift - Swift NaturalLanguage 框架错误“令牌序列类型长度为 0”

0 投票
1 回答
64 浏览

storyboard - 从另一个视图控制器执行segue 不起作用

到目前为止,我一直在使用 Objective-C,并决定从现在开始使用 swift 进行开发。

我不知道为什么这个简单的代码不起作用。

我有两个viewControllers作为superview的容器视图,一个叫做'sideViewController',另一个是'dashViewController'。

我有一个从 dashViewController 到另一个名为“nextViewController”的视图控制器的标识符“约会”的 segue

如果我尝试在 dashViewController.swift 中执行 egue,它可以正常工作。

但是,如果我尝试在“sideViewController”中使用它,为什么它不起作用?

在目标 C 中,我可以将单例用于 dashViewController,如下所示

但是很快,以下代码不起作用

我已经为此苦苦挣扎了2天..

请帮我。

谢谢

0 投票
2 回答
486 浏览

swift - SKAction.resize 不起作用

我想在节点移动(使用另一个 SKAction)时使用 SKAction 调整 SKShapeNode 的大小,但它没有成功。我只尝试调整大小,但也失败了(什么也没发生)。这就是我所做的:

我能做些什么?

0 投票
1 回答
1102 浏览

avplayer - 具有缓冲进度的 UISlider - AVPlayer

在此处输入图像描述我正在使用 AVPlayer 从服务器流式传输音频,我现在要做的是显示一个自定义 UISlider 来显示缓冲的进度。

有人想出这个吗?请给我解决方案。现在播放器一次加载整个持续时间并在 UISlider 中显示。

0 投票
1 回答
115 浏览

cakeyframeanimation - 如何获取 CAKeyframeAnimation 对象的当前屏幕 xy 位置?

在 iOS 12 beta 12 下的 Swift 4.2 中,我想获取我在CAKeyframeAnimation.

动画的代码是这样的:

我的问题是:一旦启动并运行,如何在 Swift 中查询动画以获取点中心的当前屏幕 xy?

0 投票
1 回答
1459 浏览

swift - iOS RxSwift - 使用 RxTest 和 TestScheduler 进行测试不会结束/终止测试用例

我试图了解如何正确使用TestSchedulerfrom RxTest 4.2for RxSwift 4.2

如何正确创建 TestScheduler 并传递事件,这些事件将在所有事件执行后终止调度程序?

下面的代码在启动测试调度程序时进入无限循环。因为它保持同步循环,所以我没有机会从测试中停止调度程序

我已将发布范围缩小到TestScheduler. 订阅处置似乎有问题