问题标签 [swift5.1]
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.
uistoryboard - 如何将 @IBSegueAction 与 UITabBarController 一起使用?
我有一个带有两个标签的标签栏。为了避免在视图控制器中有选项,我尝试使用@IBSegueAction
.
我初始化标签栏控制器:
我从标签栏控制器类初始化两个视图控制器:
这是视图控制器之一:
而不是使用我的初始化程序 Xcode 是使用默认的。错误信息是:
[Storyboard] Unable to find method -[(null) instantiateFirstViewControllerWithCoder:]
编辑:我在 GitHub 上上传了完整的演示项目:演示项目
swift - Switching on a Swift type to check if it's `some` implementation of a generic
Some context: JSONAPI is a standard way of writing JSON envelopes that includes stuff like pagination, linking to related objects and links to previous page, next page etcetera. Some of my calls use it, some of them don't. The ones that do use it should use a special parser for the results while the regular results just use the regular JSONDecoder.
I want to write the following code:
This doesn't build since we can't use some
here like we can do in return types. Instead I have to specify the T
JSONAPIResult
needs to conform to making this thing too complicated.
To give you a complete picture, this is what JSONAPIResult
looks like:
What I instead ended up doing was:
This code is a bit more brittle than I would like it to be since it depends on that protocol not on the actual type I should send to the jsonAPIDecoder
(JSONAPIResult<T: Decodable>
). Is there a way to check that ResultType
is a JSONAPIResult
without dragging it's nested generic T
since I don't care about T
here.
swift - 我的 Corebluetooth 框架正在连接到多个设备
我正在使用corebluetooth框架进行一个项目。当我的中央管理器开始扫描外围设备时,它会在大约一分钟后连接到单个外围设备,它开始连接到具有相同UUID的多个外围设备。
有没有办法告诉设备坚持最初连接的一个外围设备? 变量
是否更新了状态
didDiscover 外设代码
swift - 使用 Swift @propertyWrapper 作为动态默认值?
我需要一个 Swift 属性——如果该值尚未设置——默认为另一个值。
这可以使用后备存储私有属性来实现。例如,对于num
应该默认为 global的属性defaultNum
,它的工作方式如下:
这行得通,但是对于我们代码中的一个常见模式,每个这样的属性都有很多样板文件。
使用 Swift 属性包装器,是否可以更简洁地做到这一点?
什么行不通_
请注意,因为我们希望默认值是动态的,所以静态初始化器将不起作用。例如:
libxml2 - 如何将 libxml2 作为依赖项添加到 SwiftPM
我想更新一个库以使用 Swift 包管理器。目前,它基于 Carthage/Pods。但它使用 libxml2 (#import ) 作为依赖项。我尝试添加 spm 支持,但出现错误,找不到此框架 -> libxml/xmlreader.h
我还发现了一些线程https://forums.swift.org/t/referring-to-libxml2-in-swift-package-description/28880/5 但似乎仍然没有解决方案。如果有人可以提供帮助,那就太好了。
swift - 如何在 SwiftUI 中修改列表数据
当用户点击该项目时,我想更改与列表中的项目关联的对象的值,并且我收到下一个错误“无法分配给属性:'学生'是'让'常量”。我该如何防止这种情况发生?
这是我的代码:
ios - 如何实现 func hash(into hasher: inout Hasher)?
我的项目中有这个类:
是否可以使AnyCancellable
符合 Hashable ?
这是一个正确的实现吗?
ios - 网络请求后 SwiftUI 更新 Elements.count
我想用列更新自定义列表。
问题是网络请求后计数未正确更新并重新加载视图。
如何更新视图并将 maxrow 设置为当前 products.count ?感谢帮助。
swift - 如何将值从 EnvironmentObject 传递给 SwiftUI 中的类实例?
我正在尝试将名为 EnvironmentObject 的值分配给名为userSettings
的类实例categoryData
,尝试将值分配给此处的类时出现错误ObserverCategory(userID: self.userSettings.id)
错误说:
Cannot use instance member 'userSettings' within property initializer; property initializers run before 'self' is available
这是我的代码:
这是我的环境对象类:
接下来是我尝试分配其值的代码:
有人可以指导我解决这个错误吗?
谢谢
ios - 如何使 VStack 可单击以在 SwiftUI 中显示警报
我有一个带有图像和文本的 VStack,我需要使其可点击,以便向用户显示和提醒。我已经尝试过 onTapGesture 方法,但我可以打印语句但警报没有出现。
有没有其他方法可以得到解决方案?
我已经添加了整个 swift 文件供您参考
代码