NSMutableString stringWithString发生崩溃
ten.textValue = [[NSMutableString alloc]init];
ten.textValue = [NSMutableString stringWithString:textField.text];
我在第二行发生崩溃。 ten.textValue is NSMutableString
。NSMutableString stringWithString发生崩溃
当您创建ten.textValue = [[NSMutableString alloc]init];
时,您正在创建一个您拥有的对象。
当您尝试在下一行中添加字符串时,您正在创建一个自动释放字符串。这令编译器感到困惑,它报告“挂在 - 这是一个已分配的拥有对象”。
相反:
if(ten.textValue)
{
ten.textValue = [NSMutableString stringWithString: textField.text]};
}
十个未初始化。 – Nitish 2012-01-15 14:18:02
这可能是因为UITextField
is nil
by default,并通过nil
到[NSMutableString stringWithString:nil]
的text
属性会导致崩溃。
你需要确保text
不是nil
当你通过它来进行复制,例如像这样:
[NSMutableString stringWithString: textField.text ? textField.text : @""]
你也应该消除第一行 - 这也是没有用处的,因为分配并且分配的值立即被覆盖。
编号textfield文本不为零,因为上面的代码位于textFieldShouldReturn中。我正在获取textfield文本。 – Nitish 2012-01-15 14:04:01
@Nitish你尝试改变第二行吗?你还会遇到这种情况吗? – dasblinkenlight 2012-01-15 14:13:11
什么是文本字段? – andershqst 2012-01-15 13:49:13
它是UITextField。 – Nitish 2012-01-15 13:50:11
为什么你只分配一个全新的'NSMutableString'来覆盖下一行? – dasblinkenlight 2012-01-15 13:50:14