草庐IT

FOUNDATION

全部标签

swift - 将第二个添加到日期的结果是一分钟;解决方法

我正在向Foundation的日期实例添加一秒,但结果偏差了整整一分钟。varcalendar=Calendar(identifier:.iso8601)calendar.locale=Locale(identifier:"en")calendar.timeZone=TimeZone(identifier:"GMT")!letdate1=Date(timeIntervalSinceReferenceDate:-62544967141.9)letdate2=calendar.date(byAdding:DateComponents(second:1),to:date1,wrappingC

objective-c - Swift 的 Array 类型桥接到 Foundation 的 NSArray 类,如何?

在SwiftLanguageGuide我们阅读以下内容:Swift’sArraytypeisbridgedtoFoundation’sNSArrayclass.当第一个是值类型而后者是一个引用时,如何将Swift的Array桥接到Foundation的NSArray类输入?桥接是否意味着拥有一种语言的接口(interface)以使用不同语言的代码? 最佳答案 这里的值/引用区别有点转移注意力。桥接(也许令人惊讶)简单明了。有一个内部协议(protocol),_ObjectiveCBridgeable,它描述了一种可以在ObjC和Sw

swift - 检查类是否具有键值

我知道您可以使用setValue(value,forKey:key)设置Foundation类的属性,但是您如何检查类是否具有键值? 最佳答案 Swift3版本的Raymond的响应extensionNSObject{funcsafeValue(forKeykey:String)->Any?{letcopy=Mirror(reflecting:self)forchildincopy.children.makeIterator(){ifletlabel=child.label,label==key{returnchild.value}

swift - 是否存在确定类型应可使用字符串初始化的协议(protocol)?

我编写了以下代码来帮助将文本值从表单字段转换为预期值:protocolStringConvertableValueType{init?(_string:String)}extensionInt:StringConvertableValueType{}extensionString:StringConvertableValueType{}extensionDouble:StringConvertableValueType{}extensionFloat:StringConvertableValueType{}如您所见,所有这些原始类型本身已经支持相同的初始化程序。然而倾盆大雨docume

swift - 在 macOS 中获取用户偏好的温度设置

我正在尝试读取温度单位(摄氏度/华氏度)的用户设置系统首选项。我试图使用NSLocale获取此数据,但我无法在其中找到任何温度设置的证据。甚至可以读取这些数据吗?谢谢! 最佳答案 官方API记录在PreferencesUtilities下:letkey="AppleTemperatureUnit"asCFStringletdomain="AppleGlobalDomain"asCFStringifletunit=CFPreferencesCopyValue(key,domain,kCFPreferencesCurrentUser,k

swift - 在 Cocoa 命令行应用程序的子进程中从标准输入获取输入

我有一个命令行应用A,并在A我执行一个可执行脚本B,在B我期待来自标准输入的输入。我写了一个演示,实现了A在Swift中,使用Foundation的Processapi,发现B,无论以何种语言实现,都无法从标准输入中获取用户输入。代码://`A`'smain.swiftimportFoundationletprocess=Process()process.launchPath=PATH_TO_SCRIPT_Bprocess.launch()process.waitUntilExit()//`B`#!/usr/bin/swiftprint("intpusomething")letinpu

ios - 无法在 Xcode 6 中构建 iOS 应用程序

我的应用程序是用swift编写的,并且在模拟器中运行良好。但是,当我尝试为我的iPad构建它时,它说"Cannotloadunderlyingmodulefor'Foundation""Cannotloadunderlyingmodulefor'Foundation""Cannotloadunderlyingmodulefor'Foundation""Cannotloadunderlyingmodulefor'Foundation"iPad是iOS8,项目是针对iOS8 最佳答案 尝试检查SDK中的Foundation.framew

swift - 将 CustomError 转换为 ErrorType 转换为 NSError 会丢失 userInfo

尝试将CustomError转换为兼容类型(ErrorType、NSError)会导致用户信息字典丢失:classCustomError:NSError{}leterror=CustomError(domain:"com.customerrorexample",code:500,userInfo:[NSLocalizedDescriptionKey:"Agreatdescription"])然后((errorasErrorType)asNSError).localizedDescription//"Theoperationcouldn'tbecompleted..."但是这将打印正确的

ios - 为什么 NSDecimalNumber.notANumber.intValue 返回 9?

我在我的代码中发现了一个由NSDecimalNumber.notANumber.intValue返回9引起的错误,而我期望NaN(如floatValue或doubleValue返回)。有人知道为什么吗? 最佳答案 就像JoakimDanielson提到的那样,并在AppleDeveloperDocumentation中指出...Becausenumerictypeshavedifferentstoragecapabilities,attemptingtoinitializewithavalueofonetypeandaccessth

ios - 80 年代的 4 月 1 日日期在 iOS 10.0 中无法解析

我发现DateFormatterdate(from:)方法无法解析几个特定的​​日期。对于1981-1984年的4月1日,方法返回nil。这是基金会的错误吗?我们可以做些什么来解析这些日期?Xcode8.0,iOSSDK10.0。这是一个简短的Playground示例的屏幕截图: 最佳答案 如果夏令时恰好开始于午夜,就像1981年至1984年莫斯科的情况一样(参见示例ClockChangesinMoscow,Russia(Moskva))。这也被观察到WhydoesNSDateFormatterreturnnildateforthe