重用ImageView会崩溃应用程序吗?

时间:2015-03-06 02:20:43

标签: ios objective-c uiimageview uitextfield

我用图像初始化了一个图像视图:

validRightImageView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"validationTick.png"]];

希望在多个textFields中重复使用相同的图片视图,因为它是正确的视图。

self.txtName.rightViewMode = UITextFieldViewModeAlways;
self.txtCountry.rightViewMode = UITextFieldViewModeAlways;
self.txtName.rightView = validRightImageView;
self.txtCountry.rightView = validRightImageView ;

这会导致应用崩溃并在日志中显示一分钟后显示此错误:

  

*** mach_vm_map(size = 8388608)失败(错误代码= 3)

     

***错误:无法安全地分配区域

     

***在malloc_error_break中设置断点以进行调试

背后的原因是什么以及如何解决问题。我想在多个textFields中重用相同的图像。

1 个答案:

答案 0 :(得分:1)

您有一个图像对象,但将其设置为同时在两个位置显示。如果要在文本字段中显示相同的图像,则应为每个文本字段创建图像对象。