PR

画面の向き

 既に述べた通り、IS01における画面の向きは、原則としてlandscape(横長)に固定されているように思われる。他の多くの端末のように、端末を傾けることで縦横が切り替わることはない。この理由は、ハードウエアキーボードを常に使うことを前提としているためだろう。しかし、明示的に画面の向きをportrait(縦長)に固定して作られているアプリケーション(画面)は、portraitで起動される。

画面4●明示的にportraitを指定した画面
[画像のクリックで拡大表示]

 portraitで起動されているかlandscapeで起動されているかの区別は、現在のConfigurationを取得することでアプリケーションが知ることができる。

 Configurationには、画面の向き以外にも多くの情報が含まれているため、これらの情報から自動的に振る舞いを切り替えるアプリケーションが数多く存在する。しかし、Configurationの情報と端末の構造が必ず最適な状態で結びついているとは限らないため、注意をする必要がある。

 例えば、IS01でアプリケーションをportraitで起動すると、IS01のキーボードは90度傾いて画面の左にある状態のため、portraitで起動されたアプリケーションの入力デバイスとしてハードウエアキーボードを利用することはかなり難しい。G1やDROIDでは、ハードウエアキーボードの開閉によって端末の向きが変わるため、landscapeのときは必ずキーボードが出ている状態、portraitのときは必ずキーボードが隠れている状態であった。しかし、IS01ではportraitで起動したとしてもキーボードは隠れていない(キーボードが隠れることはない)。

 このことから、ハードウエアキーボードの有無のみによってソフトウエアキーボードの有効無効を自動的に判別する方法は、少なくともIS01に限って言えば最適ではないと言える。 しかし、IS01への対応として画面の向きだけでこれらを判断してしまうと、他の端末での動作に問題を生む。ユーザーが設定で切り替えられるようにするなどの対応が必要になるのではないかと思われる。