Saturday, July 16, 2011

[android-developers] Re: How to lock current orientation at runtime?

Dianne, thanks for the response - you're probably right, I should just
bite the bullet.

I'd like to vent a little though about what a hassle it is to deal
with orientation changes. It must be the #1 source of bugs in the
apps that I've come across (including my own apps). iOS does a lot
of things wrong, but it makes orientation changes so much easier than
Android. I still haven't found a way to preserve the state of an
activity that launches another dialog style activity that gets an
orientation change - I end up shoving everything in the db or passing
the state data to the dialog class. I'm no guru so I'm probably
doing something wrong there, but I wish to God that we could go back
in time and come up with a better way to deal with orientation changes
that didn't involve killing and reconstructing the entire activity!

Ok, done w/the vent. Having said all that I still enjoy programming
for Android more than Apple even though I sell a lot more apps on the
App Store vs the Market :-)

Brad

On Jul 16, 8:53 pm, Dianne Hackborn <hack...@android.com> wrote:
> Those are two different orientations.
>
> The Configuration constants:http://developer.android.com/reference/android/content/res/Configurat...
>
> The constants for set/getRequestedOrientation():http://developer.android.com/reference/android/content/pm/ActivityInf...
>
> Beyond that, I would strongly recommend not doing what you are trying to do.
>  This would result in a UI flow that is very counter to what the user
> expects -- that either an app is going to run in a particular orientation,
> or allow them to rotate their screen as they would elsewhere.  Ending up
> locked into whatever orientation they happened to launch the app in is just
> not how things should work.
>
> Besides which, there are all kinds of edge cases you'll never get right --
> for example what happens if they press home to leave your app, rotate their
> device, and then task switch back to your app?  Or as another poster
> mention, if you lock the screen into portrait like this and they flip the
> lid on their keyboard the orientation won't change to landscape, which is
> not what they are going to want.
>
> You really, really just need to code your activity correctly to be able to
> destroy and re-create the activity.
>
>
>
>
>
>
>
>
>
> On Sat, Jul 16, 2011 at 3:41 PM, Brad <bradfull...@gmail.com> wrote:
> > Hi,
>
> > I'm trying to lock my activity to the current orientation to prevent
> > an orientation change from restarting my activity while I'm waiting
> > for a http response.
>
> > So I'm trying to use this:
>
> > setRequestedOrientation(getResources().getConfiguration().orientation);
>
> > And it works fine for portrait (orientation == 1), but when the device
> > is in landscape it's getting a value of 2 which ==
>
> > ActivityInfo.SCREEN_ORIENTATION_USER
>
> > And this doesn't lock the screen.
>
> > Does anyone have any idea why I'm getting this instead of LANDSCAPE?
> > Any suggestions for a better way to lock the current orientation?
>
> > Thanks!
>
> > --
> > 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+unsubscribe@googlegroups.com
> > For more options, visit this group at
> >http://groups.google.com/group/android-developers?hl=en
>
> --
> Dianne Hackborn
> Android framework engineer
> hack...@android.com
>
> Note: please don't send private questions to me, as I don't have time to
> provide private support, and so won't reply to such e-mails.  All such
> questions should be posted on public forums, where I and others can see and
> answer them.

--
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+unsubscribe@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/android-developers?hl=en

0 Comments:

Post a Comment

Subscribe to Post Comments [Atom]

<< Home


Real Estate