When I want to make some quick tests for my UITableViewControllers, I usually create an NSArray that holds some dummy data. I would like to know if I'm doing anything wrong here:
First in MasterViewController.h
:
#import <UIKit/UIKit.h>
@class DetailViewController;
@interface MasterViewController : UITableViewController
@property (nonatomic, retain) NSArray *dataSourceArray;
@end
and then in MasterViewController.m
:
#import "MasterViewController.h"
@implementation MasterViewController
@synthesize dataSourceArray = _dataSourceArray;
- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
{
self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
if (self) {
self.title = NSLocalizedString(@"Master", @"Master");
_dataSourceArray = [[NSArray alloc] initWithObjects:@"obj 1", @"obj 2", @"obj 3", nil];
}
return self;
}
- (void)dealloc
{
[_dataSourceArray release];
[super dealloc];
}
So, the real question, as long as I'm not assigning _dataSourceArray
to something else, I'm safe in terms of memory management here, right?
-
\$\begingroup\$ I agree, the code looks good to me. \$\endgroup\$geminiCoder– geminiCoder2012年08月17日 13:28:21 +00:00Commented Aug 17, 2012 at 13:28
1 Answer 1
Yes. Everything seems correct here.
Like you mention yourself: make sure you use self.dataSourceArray
to assign new values, and the synthesized setter will take care of memory management.