There has been a decent amount of conversation on this subject and there's no "right" answer. Regardless of which way you pick, make sure you understand the pros and cons.
If you let Android do the work for you, make sure you understand that your application can be killed off and restarted at any time just by the user rotating the phone, docking, pulling out a hardware keyboard or game pag, etc.. There are quite a few times this can happen, so it would be best to know when it is going to happen and make sure your application is prepared to deal with it at any time. If you decide to handle the changes yourself with configChanges, you only need to handle the changes that impact your application. If you use the same layout for both portrait and landscape, you don't need to handle rotation changes or hardware keyboard/game pad events. Only catch the ones that will impact your application. Check out the configChanges documentation: http://developer.android.com/guide/topics/manifest/activity-element.html#config Each of the events listed there is a time where Android will stop and restart your application if you let it handle the changes. There may be more that aren't documented there, but those are the major ones. If you decide to handle them yourself, those are also the events you have the option of handling if they impact your application. Again, you will only need to handle the ones that would cause a change in your application, the others can be ignored. Based on an application I wrote that checks all the activities in the system (including the built-in apps), about 50% use configChanges and about 50% let Android handle it (on both tablets and phones), so the choice is up to you. Regardless of which way you pick, make sure to do the necessary testing. Steven Studio LFP http://www.studio-lfp.com On Friday, October 14, 2011 4:40:43 AM UTC-5, nikki wrote: > > Thanks Flo for quick reply. > > In my case the landscape layout files have no changes they are as same > as portrait, that's why i haven't created a separate landscape folder > for layout(layout_land). So on change of orientation the android will > pick the file from layout folder only. > > My confusion shall I handle onConfigurationChange for orientation > which will stop android to create a new activity or i should not > handle onConfigurationChange and let android do the life cycle process > complete. > > Thanks > > On Oct 14, 2:27 pm, Flo <florian....@gmail.com> wrote: > > Let Android handle it. > > > > Just create a second layout folder called "layout-land" and put all > > your landscape layouts in. The layouts must have the same file name > > like the layouts in the normal "layout" folder for portrait mode. > > Android will pick the right folder to get the layout from. On > > landscape mode it will take the layouts from the "layout-land" folder > > and in portrait mode it will take the layouts from the "layout" > > folder. > > > > On Oct 14, 11:11 am, nikki <nikhiles...@gmail.com> wrote: > > > > > > > > > > > > > > > > > Hi all, > > > > > I am a bit confused on setting up my screen UI. The point of confusion > > > is I am having similar UI layout file for landscape and portrait. On > > > screen orientation change shall i handle onConfigurationChange or i > > > should let android do the complete activity life cycle and recreating > > > the UI by setContentView(). > > > > > Please suggest which one is the best optimized approach. > > > > > Thanks in adavance -- You received this message because you are subscribed to the Google Groups "Android Developers" group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en