草庐IT

performance - 如何使用 Swift (beta) Array 击败 NSMutableArray 的性能?

在Swift中,我正在尝试构建一个大型项目集合。在移动中在CoreData中创建元素时,速度非常快。然而,当试图为这些项目保留索引时,创建数组Swift会对性能产生很大影响。下面的代码是NSMutableArray和Swift的数组之间的基准测试。在iOS模拟器中运行时,SwiftArray的速度大约慢了8倍。这是为什么,是否可以改进,或者应该改进Apple发布新版本的Xcode/Swift?代码:varstart:NSDatevartime:NSTimeIntervalvarbatch=1000000varrate:DoublevaroArr=NSMutableArray(capac

ios - .enumerateGroupsWithTypes block 停止参数 Swift (Xcode 6 beta 5)

今天我将Xcode6升级到beta5(从beta1),你可以想象我发现我以前运行完美的Swift应用程序充满了各种错误(嗯,从beta1开始有很多变化)。在所有错误中,有一个我不知道如何修复。它与快速闭包有关,特别是.enumerateGroupsWithTypes方法的enumerationBlock参数。这是代码:assetLib.enumerateGroupsWithTypes(ALAssetsGroupType(ALAssetsGroupSavedPhotos),usingBlock:{(group:ALAssetsGroup?,stop:CMutablePointer)in.

swift - Object != nil 在 Beta 5 中有效但在 Beta 6 中无效?

我让一个项目无人看管了好几个月,直到上周才安装了Beta5,在修复了AppDelegate.swift中的大量“无”错误后它开始工作了,今天尝试了Beta6,“无”错误又是?funcsaveContext(){varerror:NSError?=nilletmanagedObjectContext=self.managedObjectContextifmanagedObjectContext!=nil{ifmanagedObjectContext.hasChanges&&!managedObjectContext.save(&error){abort()}}}varmanagedObj

swift - 使用未声明的类型 AutoreleasingUnsafePointer Xcode 6 beta 6

以下代码给出编译器错误“使用未声明的类型AutoreleasingUnsafePointer”varmyString:AutoreleasingUnsafePointer我是否错过了编译器设置步骤?谢谢 最佳答案 如documentationrevisionhistory中所述UpdatedthePointerssectiontoreflectthatUnsafePointerhasbeenreplacedwithUnsafeMutablePointer,ConstUnsafePointerhasbeenreplacedwithUn

ios - 如何在 swift 中制作动画(xcode 6 beta)

我想知道如何用Apple的新语言快速制作动画。在objective-c中,我将使用以下代码将图像从屏幕顶部移动到末尾:[UIViewanimateWithDuration:1delay:0options:UIViewAnimationOptionCurveLinearanimations:^{UIImageView.center=CGPointMake(UIImageView.center.x,UIImageView.center.y+200);}completion:^(BOOLfinished){[selfmove];}];所以问题是:我如何在swift中制作与上面代码(objc)

objective-c - Swift beta 5 中的 bridgeToObjectiveC 和 makeObjectsPerformSelector

我的这段代码带有一个在Xcode6beta4中工作的完成处理程序,它不再在Xcode6beta5中工作。dropsToRemove.bridgeToObjectiveC().makeObjectsPerformSelector("removeFromSuperview")完整方法...funcanimateRemovingDrops(dropsToRemove:[UIView]){println(__FUNCTION__)UIView.animateWithDuration(1.0,animations:{fordropViewindropsToRemove{letx=CGFloat(

ios - Swift - XCode6 beta5 每个类都需要 init(coder)

这个问题在这里已经有了答案:Classdoesnotimplementitssuperclass'srequiredmembers(4个答案)关闭8年前。在最新的XCode6beta(5)中,我注意到我的应用程序中几乎每个类都报错:类没有实现其父类(superclass)的必需成员例如:importUIKitlet_sharedAPIManager=APIManager(baseURL:NSURL.URLWithString(API_URL))classAPIManager:AFHTTPSessionManager{classvarsharedInstance:APIManager{r

swift - Swift 中递归枚举的奇怪行为(Beta 7)

enumTree{caseLeaf(String)caseNode(Tree)}//compilernothappy!!enumTree{caseLeaf(String)caseNode([Tree])}//compilerishappyin(arguably)amorecomplexrecursivescenario?Swift编译器如何适用于第二种(更复杂的)场景而不是第一种? 最佳答案 值得注意的是Swift2beta2和进一步具有用于递归枚举的indirect关键字-这意味着enumTree{caseLeaf(T)indir

swift - Xcode 11 beta swift ui 预览不显示

只是玩SwiftUI基本应用程序,即使我处于Canvas模式,预览Canvas也没有显示。应用运行,我有这个小片段我错过了什么?#ifDEBUGstructContentView_Previews:PreviewProvider{staticvarpreviews:someView{ContentView()}}#endif 最佳答案 也许有人正在寻找这个:编辑器->Canvas(Alt+Command+Enter) 关于swift-Xcode11betaswiftui预览不显示,我们在

ios - Xcode 6 beta 6 - 主 Storyboard上的项目已消失/禁用

我在Xcode6Beta6上遇到过这个问题。当我选择主StoryboardView时,我可以在其中看到我的应用程序的所有View以及所有组件(按钮、列表等),我只能看到View本身,但看不到它们事件中的组件,尽管我之前已经将它们放在那里。当我在模拟器中构建和运行应用程序时,所有组件都是可见的,但是当我开发时,我看不到它们。在主Storyboard的用户界面View的左侧,列出了所有Controller,当我展开每个Controller时,我可以看到应该显示在View上的组件,但它们就像被禁用(淡出)一样。编译器不会显示任何错误或警告。有谁知道发生了什么以及我该如何解决这个问题?编辑:我