2011/03/14

Android - キーボードの決定ボタン - imeOptions (EditText)

東北地方太平洋沖地震ということで、とても大変な状況ですが、節電しつつ自分なりに普段の生活を送ろうとAndroidアプリ開発を再開 。


EditTextで, IMEの決定アクションを行っ際のイベントを取得したかった為,それに関する内容をまとめました。


まず, EditTextの android:imeOptions フィールドに, actionNone, actionDone, actionNext, actionSend, actionGo, actionSearch
などの値を設定することができます。

これらの値を設定した場合, アイコンが以下の様になります。

< actionNone >


< actionDone >


< actionNext >


< actionSend >


< actionGo >


< actionSearch >



で、これを設定した際のアクションを設定する場合は, 以下のようにすれば良いらしいです。

  1. EditText edittext1 = (EditText) findViewById(R.id.edittext1);  
  2. edittext1.setOnEditorActionListener(new OnEditorActionListener() {  
  3.     @Override  
  4.     public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {  
  5.         if (actionId == EditorInfo.IME_ACTION_SEARCH) {  
  6.             search(); // search処理  
  7.         }  
  8.         return true// falseを返すと, IMEがSearch→Doneへと切り替わる  
  9.     }  
  10. });  

  1. <EditText  
  2.     android:id="@+id/edittext1"  
  3.     android:layout_width="wrap_content"  
  4.     android:layout_height="wrap_content"  
  5.     android:inputType="text"  
  6.     android:imeOptions="actionSearch"  
  7.     android:hint="てすと"  
  8.     />  


ご参考までに。

2 コメント:

Unknown さんのコメント...

ちょうどキーボード入力で、アドレスバー入力確定後にWebブラウザにURLを読ませたかったので、とても助かりました。ありがとうございました。

ゆちゃん さんのコメント...

いえいえ、お助けになることができて良かったです^^

コメントを投稿

 
;