Из того, что я понял из вашего описания - как насчет:
[self removeFromSuperview];
[self release];
Это работает? В качестве альтернативы, вы должны поместить такую логику в свой контроллер представления. Затем, если у вас есть ссылка на объект (скажем, myObject), то используйте:
[myObject removeFromSuperview];
[myObject release];
Удаление из супер просмотра не означает удаление этого объекта. Ваш объект может очень жить без подключения к иерархии UIView.
РЕДАКТИРОВАТЬ: (конкретизировать комментарий Питера Дьюиса)
Когда вы создаете UIView, вы можете сделать это:
MyView* view = [[MyView alloc] initWithFrame:myViewRect];
[mySuperView addChild:view];
[view release];
Это означает, что вам больше не принадлежит представление, а супер-представление. Супер вид сохраняет ваш вид, когда он добавлен как ребенок, и вы отказываетесь от него с выпуском. Позже, когда вы сделаете:
[self removeFromSuperview];
Количество сохраненных файлов уменьшится до 0, и ваш объект будет удален автоматически.
Хорошая идея, Питер!