Я новичок в объективе-c и на данный момент разрабатываю небольшое приложение.removeFromSuperview и управление памятью
У меня есть проблемы с управлением памятью и вы хотите задать этот конкретный вопрос. У меня есть кнопка, внешний вид которого я изменяющуюся:
for (UIView *subview in button.subviews)
{
if (![subview isKindOfClass:[UIImageView class]]) // don't remove UIImageView, otherwise it will not be able to set background
{
[subview removeFromSuperview];
}
}
[button setBackgroundImage: [[imageArray objectAtIndex:itemNumber] forState:UIControlStateNormal];
/*
creating myView and myLabel here
*/
[button addSubview:myView];
[button addSubview:myLabel];
[myLabel release];
[myView release];
код на самом деле более сложный, но нет никаких утечек. Несмотря на это, количество выделенных объектов и используемой памяти постоянно растет каждый раз, когда я это делаю. Как я могу решить эту проблему?
Большое спасибо
похоже, что ваша проблема связана с созданием ярлыка. Остальное на самом деле выглядит нормально ... –
Какая проблема может быть там? Я создаю ярлык в коде, присваиваю ему некоторый текст из массива (не создавайте для него никаких объектов), а затем отпустите ярлык. Я думаю, что после [subview removeFromSuperview] время исполнения хранит эти данные в памяти, и я ничего не могу с этим сделать ((( – Burjua