草庐IT

range-init

全部标签

ios - 调试为什么 SKScene init(fileNamed :) returns nil

总长度:问题SKScene子类的init(fileNamed:)返回nil原因:.sks文件在第二次初始化调用时不存在。这个问题在某种程度上与ODR有关实现和/或行为。描述:一款使用SpriteKit构建的游戏。我的SKScene子类的init(fileNamed:)返回nil。我试图理解“为什么?”如何?”调试此问题。我的初始化SKScene子类的代码:///thehierarchy:SKScene->TBTBaseScene->TBTLevelSceneletsceneType:TBTBaseScene.Type=TBTLevelScene.selfletfileName="Lev

ios - 使用所需的 init(nscoder) 时从代码设置物理体

我正在尝试利用init?(coderaDecoder:NSCoder)函数,以便我可以在我的sks文件中子类化Sprite。我可以在sks文件中设置物理体,但它不适用于我正在使用的也有圆角的矩形sprite。由于圆角,在使用init函数之前,我在代码中设置了physicsbody,并将宽度设置为略小于正方形的宽度(这样当我的英雄滑出正方形时,没有间隙圆角是..我知道我可以使用alphamaskphysicsbody来获得相同的效果,除了这个,当我的英雄在方block上时似乎有1px'ish的差距,而且看起来不太好。想知道为什么我不能这样设置物理体,以及我该如何做或绕过它?感谢您的帮助!

ios - `UTF16Index()` 或 `UTF16Index.init(encodedOffset:)` 用于 Xcode 8/9 支持

我所在的开发团队同时支持Xcode8和Xcode9。我正在开发一个在Xcode8中使用String.UTF16Index(range.location)的功能。当我升级到Xcode9时,导致错误'init'isdeprecated.所以在Xcode9中我将其更改为UTF16Index.init(encodedOffset:range.lowerBound)。但是,现在这在Xcode8中不起作用,出现错误Argumentlabels'(encodedOffset:)'donotmatchanyavailableoverloads。即使我可以检查Xcode版本并编写不同的代码,其中一行也会

swift - 索引(: Int) method of Range in swift return incorrect value

在半开放范围对象上使用index(of:Int)方法时,如果范围不是从0开始,它总是返回不正确的值。请参见下面的代码。letrange=(3..我不明白为什么会产生这样的结果。谁能解释一下? 最佳答案 索引是不透明的对象。如果它不是数组,则不应假定它们是从零开始的,甚至不应假定它们是整数(有关示例,请参见String.Index)。要获取从零开始的整数索引,您需要获取与startIndex的距离:letrange=(3..但是,对于Int范围,它基本上与以下内容相同:letintegerIndex=5-range.lowerOffs

ios - "Index Out Of Range"刷新表时 - Swift

我在ViewController中有两个按钮,在它们下面有一个表格View。当使用不同的过滤器参数按下两个按钮之一时,表格View将被刷新。实际上,当加载表格View然后单击另一个按钮时,它工作正常并且表格被刷新。但是,当您在表格View中滚动并且滚动仍在发生时,您按下另一个按钮,我收到“索引超出范围”错误。尝试了很多事情来解决它,但就是做不到。有任何想法吗?我使用parse作为免费成员(member)。我的代码的重要部分如下:@IBActionfuncfilterType0_clicked(sender:AnyObject){iffilterTypeVar!=0{self.activ

ios - 在子类化的 UITableViewCell 中覆盖 init

我想在子类UITableViewCell中覆盖init(frame:CGRect)。overrideinit(frame:CGRect){super.init(frame:CGRect)}但这会引发错误:Initializerdoesnotovrrideadesignatedinitializerfromitssuperclass,我做错了什么? 最佳答案 对于UITableViewCell,您应该覆盖这个:overrideinit(style:UITableViewCellStyle,reuseIdentifier:String?

ios - Swift 中的 FlatMap 和 Init

结构我尝试重新创建ChrisEdihoff在dotSwift2016Demo中提供的演示中的代码。这是代码。structList{letname:Stringletid:Int}extensionList{init?(json:[String:AnyObject]){guardletname=json["name"]as?String,letid=json["id"]as?Intelse{returnnil}self.name=nameself.id=id}}letlistData=json["data"]as?[[String:AnyObject]]到目前为止一切似乎都很好。但这就是

swift 3 : NSURL to URL missing init?

我刚刚使用XCode8并让它转换我现有的项目。现在我遇到了没有参数的新URL没有初始化函数的错误。classfileObj:NSObject,NSCopying,Comparable{varURL=NSURL()//initial...新代码如下所示:classfileObj:NSObject,NSCopying,Comparable{varmyUrl=Foundation.URL()//initial...我应该如何初始化新的URL变量? 最佳答案 这样做绝对零意义,但目前(Swift3,Xcode8.0版(8A218a))它正在

swift - 类型 'String' 的值在 Swift 中没有成员 'range'

我相信我遇到了Swift版本控制问题,但我不太确定。该代码适用于我的Xcode平台,但不适用于在线swift编译器。有没有其他人遇到过这个问题或者知道我可以用什么来替换我检查字符的以下行:ifi==0||!((line.range(of:":")!=nil))这是我的代码:importFoundationfunchackTheString(line:String){varmaxOpen:Int=0varminOpen:Int=0minOpen=0maxOpen=0leti=0whilei=0&&minOpen==0{print("YES")}else{print("NO")}}}whi

swift - 在 Swift 中使用 init 和 () 创建对象有什么区别

这个问题在这里已经有了答案:InSwift,what'sthedifferencebetweencallingUINavigationController()vsUINavigationController.init()?(3个答案)关闭5年前。classA{privatevarvalue:Intinit(value:Int){self.value=value}}我们有A类,我使用A.init(value:5)和A(value:5)创建这个对象有什么区别?谢谢