UIViews之间的NSString转换

时间:2012-06-15 08:36:18

标签: objective-c xcode nsstring

我想在另一个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] –Ь–Є—Е–∞–Є–ї

编码存在问题,但如果我使用UILabel创建NSString,则会显示正确的字符串(Михаил)。

第二个UIView如果使用方法

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

当我尝试使用 firstNameTemp 时,我收到错误。

但是如果我使用 lastNameTemp ,我就没有错误。

问题是:如何成功传递第一个NSString firstNameTemp )?

1 个答案:

答案 0 :(得分:1)

这是内存管理错误。您必须保留firstNameTemp(以后再发布)。严格来说,lastNameTemp也是如此,但是错误没有浮出水面,因为字符串文字(@"...")是由编译器创建的,并且只要进程存在就会生效。