我在快速编写的IOS应用程序中遇到了一个错误,可以在一个简单的操场上重现该错误:代码如下:

import UIKit
import Foundation

var textField = UITextField()
textField.text = "Foo"
let content = textField.text
println(content.uppercaseString)

错误消息是以下之一:

执行被中断,原因:EXC_BAD_ACCESS(代码= 1,地址= 0x0)。
该进程已留在中断点,请使用“线程返回-x”返回到表达式求值之前的状态。
*线程#1:tid = 0x657a84,0x000000010be3e4c6,队列='com.apple.main-thread',停止原因= EXC_BAD_ACCESS(代码= 1,地址= 0x0)
*帧#0:0x000000010be3e4c6

另一方面,以下代码非常有用:
let testString = "Bar"
println(testString.uppercaseString)

我在使用Swift进行内存管理或桥接String和NSString时是否缺少某些东西?

提前致谢。

最佳答案

我在这里重现了崩溃,对您来说,它似乎可疑地就像您在uppercaseString中发现了一个错误。使用您提供的代码提交错误。

在Apple解决此问题时,我得到了以下解决方法:

var upper = content.uppercaseStringWithLocale(NSLocale.currentLocale());

关于ios - 尝试将UITextField.text作为字符串操作时, swift 执行EXC_BAD_ACCES,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/24107920/

10-11 19:46