2016-09-10 21 views
2

私は、ある方向から別の方向へAndroidデバイスの回転をキャプチャするためのKivyソリューションを探していました。私は以下の両方のウィンドウメソッドを試しましたが、いずれもデバイスを回転させるとon_rotateまたはrotate_screenルーチンを実行しません。私はonConfigurationChangedイベントがJavaにありますが、私はKivyと同じイベント処理を見つけることができません。KivyのAndroidで画面回転を検出するには?

Window.on_rotate(self.on_rotate) 
    Window.bind(on_rotate=self.rotate_screen)   

私がlogcatに取得するのは、デバイスが回転したが、自分のアプリケーションにこれらのイベントが表示されないことを示す次のメッセージです。

I/InputReader(270): Reconfiguring input devices. changes=0x00000004 
I/InputReader(270): Device reconfigured: id=3, name='ilitek_i2c', surface size is now 1280x800, mode is 1 
I/ActivityManager(270): Config changed: {1.0 0mcc0mnc en_US sw800dp w1280dp h752dp xlrg land finger -keyb/v/h -nav/h s.8} 

答えて

0

私はon_rotateがKivyの内部回転のみを追跡すると考えています(これはOpenGLで行われ、Androidレベルの回転には関係ありません)。

pyjniusを使って普通のJavaメソッドを使うことができますが、詳細は分かりません。ちょうどよく働くかもしれない簡単な解決策は、Window.sizefrom kivy.core.window import Window)を見ることです - これは縦から横への変化を検出するはずです。

関連する問題