swift 相关问题

Swift是Apple Inc.为其平台和Linux开发的通用开源编程语言。仅将标记用于有关语言功能的问题,或在Swift中需要代码。使用标签[ios],[macos],[watch-os],[tvos],[cocoa-touch]和[cocoa]来获取有关平台或框架的(语言无关的)问题。

没有这样的模块“FirebaseFirestore”

尝试构建我的应用程序,但它总是给我带来 FirebaseFirestore 的问题。 它似乎可以很好地识别 FirebaseStorage 和 Firebase,但不能识别 FireStore。 这是有问题的图像和

回答 4 投票 0

Swift SF 符号背景颜色

我想将“原子”符号的背景图像设置为不透明的白色,并将其放在圆的中心。 目前我有两个单独的代码片段,无法解决如何...

回答 1 投票 0

如何在主屏幕之前显示登录屏幕?

我正在使用 Swift 在 Xcode 中制作一个 iOS 应用程序。我有启动屏幕,加载后会转到主故事板。我已经制作了一个注册/登录页面,并希望在 l...

回答 1 投票 0

使用 iPad 并将屏幕从紧凑型更改为常规型时,如何防止当前视图变为默认视图?

//BottomNavigationBarView.swift // 特雷克斯勒库 // // 由 Emanuel Luna 于 2/3/24 创建。 // 导入 SwiftUI 导入用户通知 枚举 ActiveView: String, Hashable { 案例之家 案例

回答 1 投票 0

尽管使用 ObservableObject 和 EnvironmentObject 更新数据,但视图未更新

我已经组装了一个非常基本的应用程序。下面我给出了我的所有代码。 首先,这是我的主要 App 结构,我使用 MyViewModel 作为单一事实来源: @主要的 圣...

回答 1 投票 0

XML 解析获取小括号内的字符串 <something="How to get this string">

这是我尝试解析的 XML 数据的示例。我无法弄清楚如何解析嵌套在括号内的“”内的数据,即 这是我尝试解析的 XML 数据的示例。我无法弄清楚如何解析嵌套在括号内的“”内的数据,即。例如, id 想要获取“如何获取此字符串”。如果数据位于打开和关闭胡萝卜之间,我就可以获得数据。 <METAR> <sky_condition sky_cover="OVC" cloud_base_ft_agl="2100"/> <---- get the OVC from sky_cover <flight_category>IFR</flight_category> <metar_type>METAR</metar_type> </METAR> 这是我的 XML 解析器代码和委托函数 import Foundation class FeedParser: NSObject, XMLParserDelegate { private var airportItems: [FlightCategory] = [] // track parsing private var currentAirportElement: String = "" // track current item being parsed private var parserCompletiongHandler: (([FlightCategory]) -> Void)? // handle completion of parsing private var currentAirportFlightCategory: String = "" { didSet { // trim whitespace currentAirportFlightCategory = currentAirportFlightCategory.trimmingCharacters(in: CharacterSet.whitespacesAndNewlines) } } private var currenAirportSkyCondition: String = "" { didSet { currenAirportSkyCondition = currenAirportSkyCondition.trimmingCharacters(in: CharacterSet.whitespacesAndNewlines) } } // MARK: - URL Request // Hnadle Parsing feed func parseFeed(url: String, completionHandler: (([FlightCategory]) -> Void)?) { self.parserCompletiongHandler = completionHandler // URL Session Reques let request = URLRequest(url: URL(string: url)!) let session = URLSession.shared let task = session.dataTask(with: request) { data, response, error in // if no data guard let data = data else { if let error = error { print(error.localizedDescription) } return } // if data // parse xml data let parser = XMLParser(data: data) parser.delegate = self parser.parse() } task.resume() } // MARK: - XML Parser Delegate func parser(_ parser: XMLParser, didStartElement elementName: String, namespaceURI: String?, qualifiedName qName: String?, attributes attributeDict: [String : String] = [:]) { // track current item currentAirportElement = elementName if currentAirportElement == "METAR" { // it is there // currentAirportElement = "" currentAirportFlightCategory = "" currenAirportSkyCondition = "" } } // Once Parser get values of element Handler func parser(_ parser: XMLParser, foundCharacters string: String) { switch currentAirportElement { case "flight_category": currentAirportFlightCategory += string default: break } } // Once Parser at End of element Handler func parser(_ parser: XMLParser, didEndElement elementName: String, namespaceURI: String?, qualifiedName qName: String?) { if elementName == "METAR" { // "flight_category" let airportItems = FlightCategory(flight_category: currentAirportFlightCategory, sky_condition: currenAirportSkyCondition) self.airportItems.append(airportItems) } } // Call Completion Handler upon finishing Parsing func parserDidEndDocument(_ parser: XMLParser) { parserCompletiongHandler?(airportItems) } // Handle Parsing Errors func parser(_ parser: XMLParser, parseErrorOccurred parseError: any Error) { print(parseError.localizedDescription) } } 这是我加载 XML 的方式 private func loadXMLData() async { print("hmmmmm") let acwXMLURL = "https://aviationweather.gov/api/data/dataserver?requestType=retrieve&dataSource=metars&stationString=\KVNY&startTime=2024-03-10T21%3A44%3A22Z&format=xml&mostRecent=true" // parser feeder let feeder = FeedParser() feeder.parseFeed(url: acwXMLURL) { data in self.detaileHomeAirportXML = data } } private func handleXMLData() async { detaileHomeAirportXML?.forEach { item in currentFltCat = item.flight_category model.airportFltCat = item.flight_category print("XML data handled: \(currentFltCat)") if currentFltCat == "VFR" { color = Color(.green) } else if currentFltCat == "MVFR" { color = Color(.blue) } else if currentFltCat == "IFR" { color = Color(.red) } else if currentFltCat == "LIFR" { color = Color(red: 208 / 255, green: 45 / 255, blue: 208 / 255) } } } 在didStartElement委托功能中,您会收到一本attributes字典。这包含标签的属性。 你会写类似 - func parser(_ parser: XMLParser, didStartElement elementName: String, namespaceURI: String?, qualifiedName qName: String?, attributes attributeDict: [String : String] = [:]) { switch(elementName) { case "METAR": currentAirportFlightCategory = "" currenAirportSkyCondition = "" case "sky_condition": skyCover = attributes["sky_cover"] cloudBase = attributes["cloud_base_ft_agl"] default: print("Ignoring element \(elementName)") } } 请注意,这些将是可选字符串,因此您需要处理它并根据需要转换为整数。

回答 1 投票 0

当我从 Realm 删除笔记时应用程序崩溃

无法解决删除我的应用程序中的注释的问题。当我删除一条笔记时出现问题,应用程序有时会崩溃(例如,如果我添加了 3 个笔记并删除了第一个,就会发生这种情况......

回答 1 投票 0

NSDate 一年中的第几天

如何使用 Swift 找到一年中的第几天?有没有一种我没有看到的简单方法,或者我是否必须找到从 1 月 1 日到当前日期的秒数并除以麻木...

回答 5 投票 0

将驼峰式字符串分隔成空格分隔的单词

我想将驼峰式字符串分隔成新字符串中以空格分隔的单词。这是我到目前为止所拥有的: var 驼峰大写字母:字符串 { 保护 self.count > 0 else { 返回 self } 变种

回答 14 投票 0

ScrollViewReader的scrollTo不滚动

我有一个简单的 SwiftUI 列表,当用户单击按钮时我想滚动到一行。我从 hackingwithswift 复制了这段代码。它应该起作用,但它不起作用。 结构ContentView:...

回答 2 投票 0

SwiftUI - ScrollViewReader 的scrollTo 不滚动

我有一个简单的 SwiftUI 列表,当用户单击按钮时我想滚动到一行。我从 hackingwithswift 复制了这段代码。它应该起作用,但它不起作用。 结构ContentView:...

回答 2 投票 0

SceneKit 中可以有动画背景纹理吗?

我的意思是动画场景背景(scene.background.contents)。不是放置在物体上的纹理。 我目前有一个 .exr 文件作为我的项目背景,但我想要一个动画...

回答 2 投票 0

UIScrollView 中的 SwiftUI View 和 UIHostingController 会中断滚动

当我添加一个包含 SwiftUI 视图作为 childView 的 UIHostingController,然后将该 childView 放入 UIScrollView 中时,滚动会中断。 在这里我有我的观点 结构 TestHeightView:视图...

回答 4 投票 0

NSDate 一年中的第几天(swift)

如何用 swift 找到一年中的第几天?有没有一种我没有看到的简单方法,或者我是否必须找到从 1 月 1 日到当前日期的秒数并除以 num...

回答 5 投票 0

有办法存储Set<Calendar.Component>吗?

我在 Swift 上有一个相当老的项目,仍然使用 NSCalendar.Unit,而且它非常方便,因为它的 rawValue 是一个 UInt,可以存储在我的 Core Data 数据库中。我想搬到较新的...

回答 2 投票 0

条件绑定的初始化程序必须具有可选类型,而不是“[Int]”

我正在尝试编写一个函数来从控制台读取矩阵然后旋转它,但遇到错误:条件绑定的初始化程序必须具有可选类型,而不是“[Int]” 我尝试重新...

回答 1 投票 0

如何根据按钮的选择状态更改按钮的外观

我正在尝试使按钮看起来像这样。 也就是说,按钮会在被点击时改变其显示状态,有点类似于TabBar。当底部被激活时,渐变背景...

回答 1 投票 0

无法从 UIDocumentPickerViewController 中选择文件

我正在 Swift 中开发 UIDocumentPickerViewController() 。打开文档选择器后,文件和图像看起来很模糊,我无法选择其中任何一个。我已附上屏幕截图和...

回答 1 投票 0

将 Core ML 模型集成到 Xcode 应用程序中

我正在 Xcode 中集成 CoreML 图像识别模型,每当我运行它时,它总是说在路径中找不到包。然而,如果我不自己创建模型,而是...

回答 1 投票 0

iOS:如何写入项目中特定目录下的文件?

我正在尝试将我在应用程序中收集的一些字符串输出到文本文件中。 文本文件将始终存在于我的项目中,如下所示: 我正在尝试用新的(多

回答 3 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.