ZK6を使用していますが、モバイルデバイスの向きに応じてUIコンポーネントを変更したいと思います。
ZKコンポーネントリファレンス:Tablet Devices / Events / ClientInfoEventには、にgetOrientation()
メソッドがありClientInfoEvent
ます。ただし、このメソッドはクラスに表示されませんでした。また、このメソッドに関する情報も見つかりませんでした。(更新を参照)
現在、このコードを使用して、デバイスの向きが変更されたときにコンポーネントのサイズを調整しています。
@Override
public void doAfterCompose(Groupbox comp) throws Exception {
super.doAfterCompose(comp);
comp.addEventListener(Events.ON_CLIENT_INFO, new EventListener<ClientInfoEvent>() {
@Override
public void onEvent(ClientInfoEvent event) throws Exception {
getSelf().setHeight(event.getScreenHeight() + "px");
getSelf().setWidth(event.getScreenWidth() + "px");
}
});
}
しかし、サーバーがコンポーネントを更新する必要があるため、私はそれに完全に満足していません。また、それがどの方向であるかはまだわかりません。
では、どうすれば向きを知ることができますか?そして、これらの情報に従ってコンポーネントのサイズを調整するためのより良い方法は何ですか?
それが重要な場合は、Androidエミュレーターを使用してテストします。
アップデート
getOrientation()
安定版リリースではないバージョン6.5.0で実装されていることに気付きました。