I am new to Objective-C, iPhone development and XCode and there are a couple of things that trips me up and makes me think that this that feature must exist - I just haven't found it yet etc.
I'm coming over from Java and _javascript_ and as such I am used to very feature rich IDE's (e.g. IntelliJ IDEA). But XCode has been around for a while now so I'm thinking to myself that it should be pretty mature by now.
Anyway here are some questions I have collected during the day about basic functionality that I expect and some odd behaviors that I would like to understand why, along with some more exotic features that I am used to having in Java IDE's etc.
Why does not camelcase completion work? e.g. typeing “UIPV” should cause UIPickerView to be suggested.
Why does the editor not insert a closing brace automatically? I type a new method in my .m file and press enter after typing in the opening brace and it should automatically add the closing brace but it doesn’t.
Why does the completion not know about variables declared in the .h file?
Oh, it does, just found out... But only if you have saved your .h file, which brings me to my next question.
This, having to save all the time is highly annoying. Especially when you add an outlet and switch into interface builder and its not there. Is there a way to automatically save the document everytime I switch between counterparts or into xcode or before compiling etc. In IntelliJ IDEA there is no need to save - ever! If you need to go back on something dangerous you just pull up local history, and in addition to that you have VCN.
Why do I sometimes get two tabs instead of one? I find that I quite often have to press backspace on a new line because XCode inserted two tabs instead of one.
Is there a way to add a newline after the one I am currently positioned in the middle of? Right now I am moving the the end of the line first then pressing enter but in e.g. IntelliJ IDEA I can just press shift enter.
Is there a way to auto indent a block of code that has become a bit messy?
Is there really no intelligent code generation built in? E.g.:
If I nominate e.g. the fileowner in interface builder to be the delegate of some component, why does not XCode automatically offer to insert the necessary e.g. <UIPickerViewDelegate, UIPickerViewDataSource> in my .h file?
If I add a property in my .h file I want XCode to be able to automatically add the corresponding synthesize statement in the .m file. If I add a method signature in my .h file I want XCode to automatically add it to the .m file. Can these things be done?
Thankful for any answers, tips and tricks!