草庐IT

gravity_value_t

全部标签

ios - 在 swift 中获取值(value)的首选方式是什么,var 还是 func?

在swift中获取值的首选方法是什么?使用只读变量vargetString:String?{return"Value"}还是使用函数?funcgetString()->String?{return"Value"}另外,两者在性能上有区别吗? 最佳答案 首先,这些都不是合适的名称。它们不应以get开头。(get前缀在Cocoa中有历史意义,但您并不是这个意思,所以即使您的意思是“上网并检索此信息”,您也想使用类似fetch,但肯定不是你给出的情况。)这些问题在SwiftAPIDesignGuidelines的各个部分中得到解决。.首先

ios - 删除 NotificationCenter 的观察者 - "Variable used within its own initial value"

我不明白如何使用block删除通知的观察者。varblock=NotificationCenter.default.addObserver(forName:.notifName,object:obj,queue:OperationQueue.current,using:{notificationinNotificationCenter.default.removeObserver(block)//Dostuff})这会出现编译器错误“变量在其自身的初始值内使用”。我怎样才能删除这个观察者? 最佳答案 编译器提示是因为它“不知道”闭包

ios - swift iOS 从异步中获取值(value)(发布数据)

我在异步过程中获取值时遇到问题。我的类(class)是:publicclassPostService:NSObject{varresult:String=String()//thisismyfunctionfuncrequest(vardataPost:String,vardestination:String)->String{letrequest=NSMutableURLRequest(URL:NSURL(string:destinationasString)!)request.HTTPMethod="POST"letpostString=dataPostrequest.HTTPBo

ios - 在 Double 中获得奇怪的值(value)

你好,我在学习swift的时候做了一个“Clicker”作为第一个项目,我有一个自动计时器,它应该从其他数字中删除一些数字,但有时我得到像0.600000000000001这样的值,我不知道为什么。这是我的“攻击”函数,它从僵尸的生命值中移除0.2。letfGruppenAttackTimer=NSTimer.scheduledTimerWithTimeInterval(1,target:self,selector:Selector("fGruppenAttackTime"),userInfo:nil,repeats:true)funcfGruppenAttackTime(){zHea

ios - 捕获所有 "unexpectedly found nil while unwrapping an Optional value"

我有一个大型swift项目,从JSON获取大量数据。很难检查每一个数据和平是否为零。有没有办法捕获所有这些nils,以便我的应用程序在遇到意外nils时不会崩溃?或者我必须在我拥有的所有数据中使用“ifletvariable=...”!谢谢 最佳答案 坏消息:是的,您应该始终检查可选项。好消息:有比iflet更实用的快捷方式。例如。您可以提供合理的默认值(使用“nil-coalescingoperator”)。letitemID=jsonData["itemID"]as?NSNumber??0letstringVariable=js

ios - swift 枚举 : perform code on value change?

Swift枚举有各种神奇之处,比如初始化,你可以写一个变异函数,等等。但我想知道,您能否简单地让它在值更改时运行一些代码??因此,当然,使用属性+枚举,您就可以做到这一点......这太棒了。(请注意,下面的vadian给出了一个很好的完整示例。)所以我的问题很简单,Swiftenum是否有一项功能可以让您在值发生变化时运行代码?或者,简而言之,您是否必须使用属性/变异组合? 最佳答案 ButI'mwonderingifliterallywithinenuminSwiftthereisaconceptto"runcodewhenth

ios - 在 Swift 中,对于 AnyObject,我如何设置 Value() 然后调用 valueForKey()

我想在AnyObject中存储一个值,然后按如下方式检索它:varobj:AnyObject=UIButton()obj.setValue("James",forKey:"owner")obj.valueForKey("owner")但是,即使如错误所示这些方法可用,AnyObject也不允许这样做:setValue:forUndefinedKey:]:thisclassisnotkeyvaluecoding-compliantforthekeyowner.'这是怎么做到的? 最佳答案 您不能分配给UIButton的任意键。有些类确

swift - NS编码: Found nil unwrapping an Optional value

自从更新到Swift3后,我遇到了这个众所周知的崩溃,我自己无法解决...:fatalerror:unexpectedlyfoundnilwhileunwrappinganOptionalvalue*:在线self.isDefault=aDecoder.decodeObject(forKey:"BoxUserDefault_isDefault")作为!bool为什么现在会崩溃?这是我的课classBoxUserDefault:NSObject,NSCoding{varfrendlyName:Stringvarhostname:StringvarisDefault:Boolinit(fr

ios - 有人可以清楚地解释 FIRDataEventType 的 .Value、.ChildAdded、.ChildChanged、.ChildRemoved 之间的区别吗?

我很难用语言表达。有人可以解释不同的FIRDataEventType之间的区别以及何时使用它的示例吗?示例(SWIFT):letqueryRef=FIRDatabase.database().reference().child("user")queryRef.observeEventType(.ChildAdded,withBlock:{(snapshot)->Voidin或queryRef.observeEventType(.Value,withBlock:{(snapshot)->Voidin根据测试,.Value返回一个对象,而.ChildAdded返回多个;进行高级查询时,.C

swift 3 和火力地堡 : Retrieve auto id value from snapshot

我在firebase上创建了下面的结构,我需要获取带有红色下划线的自动id:我创建的用于查询值的代码:letquery=reference.queryOrdered(byChild:"receiverId").queryEqual(toValue:"LKupL7KYiedpr6uEizdCapezJ6i2")//Startprocessquery.observe(.value,with:{(snapshot)inguardsnapshot.exists()else{print("Datadoesn'texists")return}print(snapshot.key)}我的“snaps