我想在另一个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 )?
答案 0 :(得分:1)
这是内存管理错误。您必须保留firstNameTemp
(以后再发布)。严格来说,lastNameTemp
也是如此,但是错误没有浮出水面,因为字符串文字(@"..."
)是由编译器创建的,并且只要进程存在就会生效。