ARC自定义UItextView未发布

时间:2013-10-21 07:58:21

标签: ios objective-c memory-management uitextview

我有一个自定义UITextView,在我的xib中我删除UITextView然后将其类更改为我的CustomTextView。

我在界面中声明文本视图,如下所示:

@property (nonatomic, weak) IBOutlet CustomTextView *textViewInputDictee;

我发布了自定义文本视图的一些代码,因为Stackoverflow不会让我发布这个问题,但我觉得它没用:

-(BOOL)canPerformAction:(SEL)action withSender:(id)sender
{
    if (action == @selector(defineSelection:))
    {
        return NO;
    }
    else if (action == @selector(translateSelection:))
    {
        return NO;
    }
    else if (action == @selector(copy:))
    {
        return NO;
    }
    else if (action == @selector(paste:))
    {
        return NO;
    }
    else if (action == @selector(cut:))
    {
        return NO;
    }
    else {
        return  NO; 
    }

    return [super canPerformAction:action withSender:sender];
}

当我弹出控制器时,如果我的文本视图成为第一响应者,则不会释放自定义文本视图(4个月)。

我不明白为什么以及如何强制它被释放。

2 个答案:

答案 0 :(得分:0)

你不需要强制它被释放,如果你使用ARC,你不应该担心它。

使用Instruments或使用Command + Shift + B分析代码并检查泄漏。如果没有,请不要担心。

答案 1 :(得分:0)

我建议删除您的自定义UITextView,然后检查内存是否会关闭,如果确实如此,那么自定义UITextView就会出现问题,如果问题不在其他地方。此外,当您使用乐器时,请确保您的僵尸被禁用,如果您的僵尸已启用,乐器会给您一个错误的结果。此外,我想您正在为UITextView使用一些代表,请确保他们assign而不是strong