android editText 软键盘enter键图标的设置

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>


你可能感兴趣的:(android)