特集:Eclipseで始めるiアプリ――低レベルAPI編(8/10 ページ)
本格的なiアプリを作りたい場合、高レベルAPIではなく低レベルAPIを利用する必要がある。この連載の最終回では、図形アニメーション作成を通じて、Eclipse上での詳細な操作方法とデバッグ手法を解説していく。
ソフトキーの処理
次に、ソフトキーの処理を行ってみます。
高レベルAPIでは、低レベルAPIの場合と異なり、ソフトキーの処理もほかのキーと同様、processEventで行います。ここでは、ソフトキー「1」が押された時にアプリを終了させるようにします。
コンストラクタを追加してキーのラベルを設定しましょう。
*** 一部省略されたコンテンツがあります。PC版でご覧ください。 ***
キーが押された時、離れた時にこだわらない場合は、KEY_PRESSED_EVENTではなく、KEY_RELEASED_EVENTで処理を行うようにします。
KEY_PRESSED_EVENTの場合に処理を行うと、処理終了後にKEY_RELEASED_EVENTを受け取ることになるため、ダイアログ処理などで不都合が起こる可能性があるためです。
*** 一部省略されたコンテンツがあります。PC版でご覧ください。 ***
実行すると次画面のようになります。ソフトキー「1」を押すと、アプリ終了します。
*** 一部省略されたコンテンツがあります。PC版でご覧ください。 ***
日本語文字入力の受け付け
最後に、日本語文字入力を受け取れるようにしてみましょう。
ここで解説するのはDoJa3.0から追加された機能であり、それまでは低レベルAPIで漢字の入力はできず、一時的に高レベルAPIに切り替える必要がありました。
DoJa3.0以降で日本語文字の入力を受け取るには、imeOnメソッドを使います。
ここで挙げるコードでは、ソフトキー2が押されたら文字列を入力し、入力文字列を画面表示するものです。まず、画面に表示する文字列を覚えておくための変数messageを用意します。
*** 一部省略されたコンテンツがあります。PC版でご覧ください。 ***
paintメソッドで、このメッセージを描画するようにdrawStringメソッドを追加します。
*** 一部省略されたコンテンツがあります。PC版でご覧ください。 ***
コンストラクタでソフトキー2のラベルを設定します。
*** 一部省略されたコンテンツがあります。PC版でご覧ください。 ***
ソフトキー2が離された時きの処理を記述し、imeOnメソッドを呼び出してから入力を始めるようにします。
*** 一部省略されたコンテンツがあります。PC版でご覧ください。 ***
Copyright © ITmedia, Inc. All Rights Reserved.