语言

Menu
Sites
Language
Handling Window's orientation change

Hi!

I have several forms in my app, and all of them handle orientation changes automatically (SetOrientation(ORIENTATION_AUTOMATIC_FOUR_DIRECTION)). Also, my app creates and shows a custom descendant of Tizen::Ui::Window instance on top of current form and indicator. That window has no layout. The window shows correctly in every orientation, but when device is rotated, window doesn't change an orientation: it rotates with device dispite of another forms, which handle orientation correctly.

So, I have several questions:

  1. Can Window's descendants handle orientation changes automatically, same as all of built-in Window's descendants (Form, Popup, etc)?
  2. If I need to handle orientation chages by myself, how to rotate window's coordinate system?
  3. The Window has no method to add an IOrientationChangeEventListener. But frame's listener have not being fired on orientation changes (I thought, this is because of deprecated functionality). What is correct way to listen orientation changes by Window's descendants?

Thank you for help! :)

编辑者为: Denis Kepeschuk 28 11月, 2013

响应

4 回复
Denis Kepeschuk

Is it possible?

Denis Kepeschuk

Have any ideas?

Pushpa G

Hello.

1.Can Window's descendants handle orientation changes automatically, same as all of built-in Window's descendants (Form, Popup, etc)?
2.If he need to handle orientation chages by himself, how to rotate window's coordinate system?
->
Window's descendants are rotated along the Owner Form which is set by the void Window::SetOwner(Tizen::Ui::Control *pControl) API.

3.The Window has no method to add an IOrientatiON-CHANGEEventListener. But frame's listener have not being fired on orientation changes (I thought, this is because of deprecated functionality). What is correct way to listen orientation changes by Window's descendants?
->
We have the following APIs.
void Form::AddOrientationEventListener(Tizen::Ui::IOrientationEventListener& listener);
void Frame::AddOrientationEventListener(Tizen::Ui::IOrientationEventListener& listener);

<1> Frame + Forms
In this situation, the current Form(= top Form) receives the orientation event.
<2> only Frame
In this situation, the Frame receives the orientation event.

And a application developer manages the Window's descendant in the OnOrientatiON-CHANGEd callback of the Current Form(case 1) or Frame(case 2).
Thanks.

Denis Kepeschuk

Hello, Pushpa G!

Thank you very much for your response!

Now it is clear for me!