매우 간단한 인터페이스를 사용하고 백엔드에서 데이터베이스 처리를 수행하는 iphone 애플리케이션을 개발 중입니다. 나는 ARC OPTION도 가능하게하고있다. 다음과 같이 내있는 viewDidLoad 방법은 다음과 같습니다iphone 앱 개발 관련 메모리 문제
@interface
Create_Inventory_Item:UIViewController<Date_Picker_Protocol,Picker_View_Protocol,UITextFieldDelegate>
{
IBOutlet UIScrollView *svScroll;
IBOutlet UITextField *tfItemName;
IBOutlet UILabel *lbUnitsOfMeasure;
IBOutlet UIButton *btSelectUnitsMeasure;
IBOutlet UIButton *btDate;
IBOutlet UINavigationBar *btBack;
IBOutlet UITextField *tfQuantity;
IBOutlet UITextField *tfCostUnit;
IBOutlet UITextField *tfValue;
IBOutlet UIButton *btCreate;
NSMutableArray *arrayUnitsMeasure;
UIButton *btKeyboardDone;
UIView *accessoryView;
UITextField *txtActiveField;
UIButton *btMinus;
Picker_View *callPickerView;
Date_Picker *callDatePicker;
}
@property(nonatomic,retain) UIButton *btMinus;
@property(nonatomic,retain)UITextField *txtActiveField;
@property(nonatomic,retain) UIButton *btKeyboardDone;
@property(nonatomic,retain)UIView *accessoryView;
@property(nonatomic,retain) IBOutlet UINavigationBar *btBack;
@property(nonatomic,retain)IBOutlet UIScrollView *svScroll;
@property(nonatomic,retain)IBOutlet UITextField *tfItemName;
@property(nonatomic,retain)IBOutlet UILabel *lbUnitsOfMeasure;
@property(nonatomic,retain)IBOutlet UIButton *btSelectUnitsMeasure;
@property(nonatomic,retain) IBOutlet UIButton *btDate;
@property(nonatomic,retain) IBOutlet UITextField *tfQuantity;
@property(nonatomic,retain) IBOutlet UITextField *tfCostUnit;
@property(nonatomic,retain)IBOutlet UITextField *tfValue;
@property(nonatomic,retain) IBOutlet UIButton *btCreate;
-(IBAction)btSelectUnitsMeasure:(id)sender;
-(IBAction)btDate:(id)sender;
-(IBAction)btCreate:(id)sender;
-(IBAction) hideKeyboard:(id)sender;
-(IBAction)showAlerView:(NSString *)message;
-(IBAction)btBack:(id)sender;
은 내가 무엇을 할당 해제 및 viewDidUnloadMethod에 어떻게해야합니까 알려주세요 :
- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view from its nib.
/*********needed to implement scroll view********/
svScroll.frame = CGRectMake(0, 0, 320, 460);
svScroll.contentSize = CGSizeMake(320, 800);
/*********************************************/
//[DataHelper openDbCompany];
NSString *date=[DataHelper getFinYr];
[btDate setTitle:[DataHelper dateSqliteToNormal:date] forState:UIControlStateNormal];
arrayUnitsMeasure=[[NSMutableArray alloc]initWithArray:[DataHelper getUnitsOfMeasure]];
//[DataHelper closeDbCompany];
tfValue.keyboardType=UIKeyboardTypeDecimalPad;
tfQuantity.keyboardType=UIKeyboardTypeDecimalPad;
tfCostUnit.keyboardType=UIKeyboardTypeDecimalPad;
//catching the notification for text field value change.
[[NSNotificationCenter defaultCenter]addObserver:self selector:@selector(textFieldChanged:) name:UITextFieldTextDidChangeNotification object:tfQuantity];
[[NSNotificationCenter defaultCenter]addObserver:self selector:@selector(textFieldChanged:) name:UITextFieldTextDidChangeNotification object:tfCostUnit];
}
내 .H 파일에 포함 된 포함되어 다음과 같이 정의된다 IBOutlets? ARC OPTION을 사용하고 있습니다.
또한 메모리 할당 및 누출에 대한 시뮬레이터의 프로필 옵션을 사용하여 앱을 실행할 때 때때로 메모리 레벨 낮음 경고 및 메모리 레벨 보통을 표시합니다. 이것의 원인은 무엇입니까?
dealloc 메서드에서 [super dealloc]을 호출해야합니까 ?? –
ARC를 사용하는 경우에는 필요하지 않습니다. –
'응징 해제'란 무엇을 의미합니까? ARC에서 어떻게 해제합니까? 설명 해주십시오? 또한 ARC에서 모든 객체를 nil로 설정해야합니까? 코드 스 니펫을보고 개체 이름을 알려주십시오. –