iPhone应用程序错误。带有空格的NSString

时间:2012-07-01 18:35:49

标签: objective-c nsstring whitespace

我的iPhone应用程序遇到了严重问题。我的问题似乎很基本,但我找不到错误的原因。我有一个由用户输入设置的NSString saveDescription。

 savede = civilsJobDescTb.text;

然后我在NSLog中调用以检查字符串是否已设置,它是。所以我没有问题。

稍后在程序中我创建了一个包含多个细节的PDF文件。一切正常,除了我之前设置的NSString。好像字符串不再存在。我收到了一个错误。 EXC_BAD_ACCESS或类似的东西。

现在为了奇怪的事情。只有在文本框中有空格时才会发生这种情况。例如:我输入“ok”并且它可以正常工作。但如果我输入“一切都好”,那我就会出错。

我看不出问题出在哪里。有什么想法吗?

1 个答案:

答案 0 :(得分:1)

您没有指定您的“savede”是否为ivar(实例变量),但假设它是,

如果您使用ARC ,请为其设置一个强大的属性:

@property (nonatomic, strong) NSString * savede;

self.savede = civilsJobDescTb.text;

如果您不使用ARC ,请确保在设置后保留“savede”字符串。类似的东西:

 savede = civilsJobDescTb.text;
 [savede retain];

(确保在你真正完成它时释放它)。

你也可以制作一个字符串的副本(如果它来自的标签消失,或被清除,或以某种方式消失)。

[savede setString: civilsJobDescTb.text];
[savde retain];