0

我有一个自定义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 个月)。

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

4

2 回答 2

0

我建议删除您的 customUITextView并检查之后内存是否下降,如果确实如此,那么您的 custom 有问题UITextView,如果不是问题出在其他地方。此外,当您使用仪器时,请确保您的僵尸被禁用,如果您的僵尸被启用,仪器会给您一个错误的结果。另外我想您正在为您的 使用一些代表,请UITextView确保它们assign不是strong

于 2013-10-21T10:20:34.760 回答
0

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

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

于 2013-10-21T08:06:49.850 回答