0

我想NSString从一个UIView在另一个使用UIView

NSString我在第一种中创建的方式有两种UIView

NSString *firstNameTemp =  [[[[html componentsSeparatedByString:@"<first_name>"] objectAtIndex:1] componentsSeparatedByString:@"</first_name>"] objectAtIndex:0];
NSString *lastNameTemp =  @"Михаил";

如果我使用NSLog我在两种情况下都会得到相同的行:

2012-06-15 16:21:54.778 VKLike[22718:707] –Ь–Є—Е–∞–Є–ї
2012-06-15 16:21:54.790 VKLike[22718:707] –Ь–Є—Е–∞–Є–ї

编码存在问题,但如果我UILabelNSString它创建显示正确的字符串(Михаил)。

第二种UIViewif使用方法

- (void) initPhotoViewWithFrame:(CGRect)frame Image:(UIImage *)image Name:(NSString *)name;

当我尝试使用firstNameTemp时出现错误。

但是,如果我使用lastNameTemp,我不会收到错误。

问题是:如何成功通过第一个NSStringfirstNameTemp)?

4

1 回答 1

1

这是内存管理错误。您必须保留firstNameTemp(并稍后释放它)。严格来说,这也是正确的,lastNameTemp但错误不会出现,因为字符串文字 ( @"...") 是由编译器创建的,并且只要进程存在就存在。

于 2012-06-15T08:47:21.620 回答