2017-10-17 9 views
2

次の作業を行う前に画面の変更方向を完全に待つ方法は?Unityでシーンを変更する前に方向変更を完全に待つ方法

IEnumerator ChangeOrientation() 
{ 
    Screen.orientation = ScreenOrientation.LandscapeLeft; 

    // Fix background not completely rotate on unpacking story 
    yield return Timing.WaitUntilTrue(() => Screen.orientation == ScreenOrientation.LandscapeLeft); 

    bool unpack = storyData.sceneBundleName.Length > 0; //If we have loaded a scene bundle 
    StoryManager.Instance.StartStory(this, unpack); 
} 

答えて

3

私はそれを試してみましませんが、決してしている - forumで読んで - OnRectTransformDimensionsChange()はトリックを行うようです。

Here(短い)ドキュメント。

+0

私はそれについて聞いたことがありますが、それは私のgameObjectの権利にRectTransformコンポーネントを追加する必要があることを意味ですか?なぜなら私は普通の変換だからです。 –

+1

そうです。ちなみに、 "ユーティリティ"オブジェクトを作成し、それにRectTransformを追加することができます。その時点で、リスナーをこのリスナーに設定します。私はそれが試してみる価値があると思います、あなたは同意しますか? –

+1

もちろん、それ以上は同意できませんでしたが、ちょうどWaitForSeconds(0.3f)と少なくともグラフィックグリッチは入れないで一時的な修正をしています。だから私はまずそれに固執します。時間があるときに試してみる。 Great @Andrea –

関連する問題