Why should I declare local variables as 'static' inside a method?
Like: static NSString *cellIdentifier = @"Cell";
Is it a performance advantage?
(I know what 'static' does; in C context)
What does this syntax mean?[someObj release], someObj = nil;
Two statements?
Why should I assign nil again?
Is not 'release' enough?
Should I do it for all objects I allocate/own? Or for just view objects?
Why does everyone copy NSString, but retains other objects (in property declaration)?
Yes, NSStrings can be changed, but other objects can be changed also, right?
Then why 'copy' for just NSString, not for all?
Is it just a defensive convention?
Shouldn't I release constant NSString? Like here:NSString *CellIdentifier = @"Cell";
Why not? Does the compiler allocate/deallocate it for me?
In some tutorial application I observed these (Built with IB):
Properties(IBOutlet, with same ivar name): window, someLabel, someTextField, etc etc...
In the dealloc method, although the window ivar was released, others were not.
My question is: WHY? Shouldn't I release other ivars(labels, textField) as well? Why not?
Say, I have 3 cascaded drop-down lists.
I mean, based on what is selected on the first list, 2nd list is populated
and based on what is selected on the second list, 3rd list is populated.
What UI components can reflect this best?
How is drop-down list presented in iPhone UI?
Tableview with UIPicker? When should I update the 2nd, 3rd list?
Or just three labels which have touch events?
Can you give me some good example tutorials about Core-Data?
(Not just simple data fetching and storing on 2/3 tables with 1/2 relationship)
How can I know whether my app is leaking memory? Any tools?