Вот мой код: Заголовок:
#import <UIKit/UIKit.h>
@interface ViewController : UIViewController {
UIImageView *imageView;
NSMutableArray *arrayWithImages;
}
- (IBAction)startAnimation:(id)sender;
- (IBAction)cleanMemory:(id)sender;
@end
Реализация:
#import "ViewController.h"
@implementation ViewController
......
- (IBAction)startAnimation:(id)sender {
imageView = [[UIImageView alloc] initWithFrame:CGRectMake(0, 0, 768, 1024)];
arrayWithImages = [[NSMutableArray alloc] initWithObjects:
[UIImage imageNamed:@"pic1"],
[UIImage imageNamed:@"pic2"],
[UIImage imageNamed:@"pic3"],
[UIImage imageNamed:@"pic4"],
[UIImage imageNamed:@"pic5"],
[UIImage imageNamed:@"pic6"],
[UIImage imageNamed:@"pic7"],
[UIImage imageNamed:@"pic8"],nil];
imageView.animationImages = arrayWithImages;
imageView.animationDuration = 3;
imageView.animationRepeatCount = 1;
[self.view addSubview:imageView];
[imageView startAnimating];
}
- (IBAction)cleanMemory:(id)sender {
[arrayWithImages removeAllObjects];
[arrayWithImages release];
arrayWithImages= nil;
[imageView removeFromSuperview];
[imageView release];
imageView = nil;
}
@end
У меня есть ViewController
и его view
с двумя кнопками.Первая кнопка с действием startAnimation
, которая создает UIImageView
, NSMutableArray
и запускает на ней анимацию.Вторая кнопка с действием cleanMemory
, которая очищает все, что я создал в startAnimation
.Когда я запускаю Profile
с инструмента Activity Monitor
, моя программа имеет 4 mb Real Mem
, когда я нажимаю кнопку startAnimation
, она меняется на 16 mb Real Mem
, а после анимации я нажимаю кнопку cleanMemory
, но она имеет тот же 16 mb Real Mem
... Зачем?Я не хочу очищать свою память до начального значения (4 Мб памяти).Пожалуйста, не могли бы вы объяснить, где у меня проблемы?