Tag: 快速的

在Swift中将Int转换为UInt32

我做了一个Tcp客户端,因此使用CFStreamCreatePairWithSocketToHost期待UInt32作为第二个参数。 这里是我想要做的一个例子。 func initNetwork(IP: String, Port: Int) { // relevant stuff //Convert Port:Int to UInt32 to make this shit work! CFStreamCreatePairWithSocketToHost(kCFAllocatorDefault, IP as NSString , Port , &readStream, &writeStream) // Irelevant stuff } 我一直在寻找一个解决scheme,现在我似乎无法find一个!

我如何做一个圆angular的UIImage / -View CGRect(Swift)

如何在Swift iOS Playground上制作带圆angular的UIImageView? 里面需要填充颜色。

String.Index如何在Swift中工作

我一直在更新一些旧的代码和Swift 3的答案,但是当我到Swift的string和索引,这是一个很难理解的东西。 具体来说我正在尝试以下内容: let str = "Hello, playground" let prefixRange = str.startIndex..<str.startIndex.advancedBy(5) // error 第二行给了我下面的错误 'advancedBy'不可用:要通过n个步骤前进一个索引,在产生索引的CharacterView实例上调用'index(_:offsetBy :)'。 我看到该String有以下方法。 str.index(after: String.Index) str.index(before: String.Index) str.index(String.Index, offsetBy: String.IndexDistance) str.index(String.Index, offsetBy: String.IndexDistance, limitedBy: String.Index) 起初我真的很困惑,于是我开始和他们一起玩,直到我理解他们。 我在下面添加一个答案,以显示如何使用它们。

PerformFetchWithCompletionHandler在用Xcode模拟时调用两次

在Xcode 7.0.1中,“模拟背景”获取命令导致performFetchWithCompletionHandler被触发两次。 这是一个Xcodedebugging错误,或者这可能发生在运行该应用程序的发行版的设备上。 更新现在我们有Xcode 7.1.1,仍然执行performFetchWithCompletionHandler被调用两次。 由于我不确定这是否也发生在“野外”我保持一个状态,如果我的抓取操作已经在运行。 – (void)application:(UIApplication *)application performFetchWithCompletionHandler:(nonnull void (^)(UIBackgroundFetchResult))completionHandler { if (self.performingFetch) { return completionHandler(UIBackgroundFetchResultNoData); } self.performingFetch = YES; … self.performingFetch = NO; }

在Swift中用索引映射或者减less

有没有办法在map获取数组的索引或reduce在Swift中? 我正在寻找类似于Ruby中的each_with_index 。 func lunhCheck(number : String) -> Bool { var odd = true; return reverse(number).map { String($0).toInt()! }.reduce(0) { odd = !odd return $0 + (odd ? ($1 == 9 ? 9 : ($1 * 2) % 9) : $1) } % 10 == 0 } lunhCheck("49927398716") lunhCheck("49927398717") 我想摆脱上面的oddvariables。

如何创build一个可以从编程创build的button调用的segue?

在Swift中,我有一个button创build了programmaticaly使用: var button = UIBarButtonItem(title: "Tableau", style: .Plain, target: self, action: "tabBarTableauClicked") 我希望当用户点击button它改变viewControllers。 以下是tabBarTableauClicked的代码: func tabBarTableauClicked(){ performSegueWithIdentifier("tableau", sender: self) } 但它显然不起作用,因为没有称为“画面”的标识符的segue。 而且我不能用Ctrl +点击button并拖动到第二个viewController创build一个segue,因为这个button是以编程方式创build的,而不是在Storyboard中。 如何在Swift中以编程方式创build一个具有标识符的segue?

如何将一个Swiftstring数组传递给一个带有char **参数的C函数

我正试图与Swift的一个旧的Cterminal应用进行交互。 我已经成功地集成了源代码,并将C的头文件桥接到了Swift中。 代码编译并从Xcode 6.3 beta运行。 我已经将terminal应用的主要入口重命名为: int initialize(int argc, char **argv); 不过,我正在努力将Swift的parameter passing给这个C函数。 我的挑战是以正确的格式转换参数。 Swift的典型input如下所示: let args = ["-c", "1.2.3.4", "-p", "8000"] 我试图搞乱“cStringUsingEncoding(NSUTF8StringEncoding)”和“withUnsafePointer”,但没有运气到目前为止。 任何帮助是极大的赞赏!

Swift的性能:sorting数组

我在Swift中实现了一个algorithm,注意到性能非常差。 深入挖掘之后,我意识到其中一个瓶颈就像分类数组一样简单。 相关部分在这里: let n = 1000000 var x = [Int](repeating: 0, count: n) for i in 0..<n { x[i] = random() } // start clock here let y = sort(x) // stop clock here 在C ++中,类似的操作在我的电脑上需要0.06秒 。 在Python中,它需要0.6秒 (没有技巧,只是y =sorting(x)的整数列表)。 在Swift中,如果使用以下命令编译它,则需要6秒 : xcrun swift -O3 -sdk `xcrun –show-sdk-path –sdk macosx` 如果我用下面的命令编译它需要多达88秒的时间 : xcrun swift […]

String.Index如何在Swift 3中工作

我一直在更新一些旧的代码和Swift 3的答案,但是当我到Swiftstring和索引,这是一个很难理解的东西。 具体来说我正在尝试以下内容: let str = "Hello, playground" let prefixRange = str.startIndex..<str.startIndex.advancedBy(5) // error 第二行给了我下面的错误 'advancedBy'不可用:要通过n个步骤前进一个索引,在产生索引的CharacterView实例上调用'index(_:offsetBy :)'。 我看到该String有以下方法。 str.index(after: String.Index) str.index(before: String.Index) str.index(String.Index, offsetBy: String.IndexDistance) str.index(String.Index, offsetBy: String.IndexDistance, limitedBy: String.Index) 起初我真的很困惑,于是我开始和他们一起玩,直到我理解他们。 我在下面添加一个答案以显示如何使用它们。

在IOS中的应用程序之间共享数据

我有一个任务在同一设备上的应用程序之间共享数据。 可能两个应用程序都可以在同一台设备上使用共享数据库。 如何在IOS中的两个应用程序之间共享数据。 任何人都以任何方式做了。 请告诉我。 谢谢