最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Android 點(diǎn)擊屏幕空白處收起輸入法軟鍵盤(手動(dòng)打開)

 更新時(shí)間:2016年12月20日 09:29:56   作者:huaxaY  
很多時(shí)候,我們在使用應(yīng)用時(shí),會(huì)出現(xiàn)輸入法軟鍵盤彈出的問題,通常情況下,我們默認(rèn)會(huì)使用戶點(diǎn)擊返回鍵或者下一步對軟鍵盤進(jìn)行隱藏。為了更好的體驗(yàn),我們可以實(shí)現(xiàn)當(dāng)用戶使用完畢軟鍵盤時(shí)。點(diǎn)擊屏幕空白即可實(shí)現(xiàn)收起輸入法軟鍵盤

很多時(shí)候,我們在使用應(yīng)用時(shí),會(huì)出現(xiàn)輸入法軟鍵盤彈出的問題,通常情況下,我們默認(rèn)會(huì)使用戶點(diǎn)擊返回鍵或者下一步對軟鍵盤進(jìn)行隱藏。為了更好的體驗(yàn),我們可以實(shí)現(xiàn)當(dāng)用戶使用完畢軟鍵盤時(shí)。點(diǎn)擊屏幕空白區(qū)域即可實(shí)現(xiàn)收起輸入法軟鍵盤功能。下面給大家介紹下實(shí)現(xiàn)方法。

1、//隱藏軟鍵盤  

 在Java文件:

InputMethodManager m = (InputMethodManager) mContext.getSystemService(Context.INPUT_METHOD_SERVICE);
  m .hideSoftInputFromWindow(xxxx.getWindowToken(), 0);//比如EditView

或者是:

在Manifest.xml的activity中寫上:Android:windowSoftInputMode="stateHidden表示打開activity隱藏輸入法。

2、//顯示軟鍵盤,控件ID可以是EditText,TextView  

((InputMethodManager)getSystemService(INPUT_METHOD_SERVICE)).showSoftInput(控件ID, 0); 

3、不自動(dòng)彈出鍵盤:

最理想的實(shí)現(xiàn)方式:

public class HomeActivity extends Activity { 
 ...... 
 @Override 
 public boolean dispatchTouchEvent(MotionEvent ev) { 
 if (ev.getAction() == MotionEvent.ACTION_DOWN) { 
  // 獲得當(dāng)前得到焦點(diǎn)的View,一般情況下就是EditText(特殊情況就是軌跡求或者實(shí)體案件會(huì)移動(dòng)焦點(diǎn)) 
  View v = getCurrentFocus(); 
  if (isShouldHideInput(v, ev)) { 
  hideSoftInput(v.getWindowToken()); 
  } 
 } 
 return super.dispatchTouchEvent(ev); 
 } 
 /** 
 * 根據(jù)EditText所在坐標(biāo)和用戶點(diǎn)擊的坐標(biāo)相對比,來判斷是否隱藏鍵盤,因?yàn)楫?dāng)用戶點(diǎn)擊EditText時(shí)沒必要隱藏 
 * 
 * @param v 
 * @param event 
 * @return 
 */ 
 private boolean isShouldHideInput(View v, MotionEvent event) { 
 if (v != null && (v instanceof EditText)) { 
  int[] l = { 0, 0 }; 
  v.getLocationInWindow(l); 
  int left = l[0], top = l[1], bottom = top + v.getHeight(), right = left 
   + v.getWidth(); 
  if (event.getX() > left && event.getX() < right 
   && event.getY() > top && event.getY() < bottom) { 
  // 點(diǎn)擊EditText的事件,忽略它。 
  return false; 
  } else { 
  return true; 
  } 
 } 
 // 如果焦點(diǎn)不是EditText則忽略,這個(gè)發(fā)生在視圖剛繪制完,第一個(gè)焦點(diǎn)不在EditView上,和用戶用軌跡球選擇其他的焦點(diǎn) 
 return false; 
 } 
 /** 
 * 多種隱藏軟件盤方法的其中一種 
 * 
 * @param token 
 */ 
 private void hideSoftInput(IBinder token) { 
 if (token != null) { 
  InputMethodManager im = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE); 
  im.hideSoftInputFromWindow(token, 
   InputMethodManager.HIDE_NOT_ALWAYS); 
 } 
 } 
 ...... 
} 

以上所述是小編給大家介紹的Android 點(diǎn)擊屏幕空白處收起輸入法軟鍵盤(手動(dòng)打開),希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!

相關(guān)文章

最新評(píng)論

南召县| 白玉县| 合川市| 酒泉市| 阳城县| 雷山县| 东光县| 济南市| 侯马市| 东乌珠穆沁旗| 双峰县| 宁阳县| 闽侯县| 普定县| 沙雅县| 开远市| 大城县| 钦州市| 新龙县| 张家口市| 淮北市| 山东省| 普宁市| 涿州市| 万山特区| 柳江县| 奎屯市| 高阳县| 台山市| 富顺县| 建水县| 天气| 呼和浩特市| 开封市| 克拉玛依市| 孟州市| 老河口市| 弥渡县| 长海县| 隆子县| 内丘县|