android editText 软键盘enter键图标的设置
<span style="font-size:14px;"><EditText android:layout_marginTop="10dp" android:layout_width="match_parent" android:layout_height="wrap_content" android:hint="输入单位" android:layout_marginLeft="10dp" android:layout_marginRight="10dp" <span style="color:#ff0000;"> android:imeOptions="actionSearch"</span> /></span>
EditText通过设置android:imeOptions来改变默认的”文本或者样式。这里举几个常用的常量值:
actionUnspecified 未指定,对应常量EditorInfo.IME_ACTION_UNSPECIFIED.
actionNone 没有动作,对应常量EditorInfo.IME_ACTION_NONE
actionGo 去往,对应常量EditorInfo.IME_ACTION_GO
actionSearch 搜索,对应常量EditorInfo.IME_ACTION_SEARCH
actionSend 发送,对应常量EditorInfo.IME_ACTION_SEND
actionNext 下一个,对应常量EditorInfo.IME_ACTION_NEXT
actionDone 完成,对应常量EditorInfo.IME_ACTION_DONE
android键盘中的enter键是可以用editText的android:imeOptions标签变化的。
比如见到的网页中输入url的go按钮,比如搜索的时候search图标。
显示search图标需要设置为android:imeOptions="actionSearch"。
后来发现仅仅设置这一个属性,search按钮还是出不来,后来增加了一个属性android:inputType="text"将键盘设置为文字输入布局,则键盘中search按钮正常出现。尝试go按钮,也正常出现了。
我发现必须加android:singleLine="true" 才行
对于事件捕捉:
<span style="font-size:14px;"> companySearchET.setOnEditorActionListener(new TextView.OnEditorActionListener() { public boolean onEditorAction(TextView v, int actionId, KeyEvent event) { final String searchStr = companySearchET.getText().toString().trim(); if (actionId==EditorInfo.IME_ACTION_SEARCH ||(event!=null&&event.getKeyCode()== KeyEvent.KEYCODE_ENTER)) { //do something; if(searchStr == null || "".equals(searchStr)){ Toast.makeText(CompanyChangeActivity.this, "请输入单位关键字", Toast.LENGTH_SHORT).show(); Log.e("这里", "这里"); return true; }else{ } return true; } return false; } }); </span>