Android 點(diǎn)擊editview以外位置實(shí)現(xiàn)隱藏輸入法
Android 點(diǎn)擊editview以外位置實(shí)現(xiàn)隱藏輸入法
實(shí)現(xiàn)代碼:
@Override
public boolean dispatchTouchEvent(MotionEvent ev) {
if (ev.getAction() == MotionEvent.ACTION_DOWN) {
View v = getActivity().getCurrentFocus();
if (isShouldHideInput(v, ev)) {
InputMethodManager imm = (InputMethodManager) getActivity().getSystemService(Context.INPUT_METHOD_SERVICE);
if (imm != null) {
imm.hideSoftInputFromWindow(v.getWindowToken(), 0);
}
}
return getActivity().dispatchTouchEvent(ev);
}
// 必不可少,否則所有的組件都不會(huì)有TouchEvent了
if (getActivity().getWindow().superDispatchTouchEvent(ev)) {
return true;
}
return getActivity().onTouchEvent(ev);
}
public boolean isShouldHideInput(View v, MotionEvent event) {
if (v != null && (v instanceof EditText)) {
int[] leftTop = { 0, 0 };
//獲取輸入框當(dāng)前的location位置
v.getLocationInWindow(leftTop);
int left = leftTop[0];
int top = leftTop[1];
int bottom = top + v.getHeight();
int right = left + v.getWidth();
if (event.getX() > left && event.getX() < right
&& event.getY() > top && event.getY() < bottom) {
// 點(diǎn)擊的是輸入框區(qū)域,保留點(diǎn)擊EditText的事件
return false;
} else {
return true;
}
}
return false;
}
感謝閱讀,希望能幫助到大家,謝謝大家對(duì)本站的支持!
相關(guān)文章
Android?DataBinding類(lèi)關(guān)系深入探究
看了谷歌官方文章確實(shí)寫(xiě)的太簡(jiǎn)略了,甚至看完之后有很多地方還不知道怎么回事兒或者怎么用,那么接下來(lái)我將通過(guò)文章全面介紹一下DataBinding類(lèi)關(guān)系2022-11-11
Android10開(kāi)發(fā)者常見(jiàn)問(wèn)題(小結(jié))
這篇文章主要介紹了Android10開(kāi)發(fā)者常見(jiàn)問(wèn)題(小結(jié)),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-11-11
Android實(shí)現(xiàn)小米相機(jī)底部滑動(dòng)指示器
這篇文章主要為大家詳細(xì)介紹了Android實(shí)現(xiàn)小米相機(jī)底部滑動(dòng)指示器,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-04-04
android Activity線性布局和表格布局實(shí)例講解
在activity的布局中,線性布局和表格布局是最簡(jiǎn)單的,這次分別從線性布局,表格布局以及線性布局和表格混合布局做了實(shí)驗(yàn)2013-11-11
Android 用RxBinding與RxJava2實(shí)現(xiàn)短信驗(yàn)證碼倒計(jì)時(shí)功能
這篇文章主要介紹了Android 用RxBinding與RxJava2實(shí)現(xiàn)短信倒計(jì)時(shí)功能示例,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-10-10
Android獲取本機(jī)電話(huà)號(hào)碼的簡(jiǎn)單方法
Android獲取本機(jī)電話(huà)號(hào)碼的簡(jiǎn)單方法,需要的朋友可以參考一下2013-05-05
Android自定義控件eBook實(shí)現(xiàn)翻書(shū)效果實(shí)例詳解
這篇文章主要介紹了Android自定義控件eBook實(shí)現(xiàn)翻書(shū)效果的方法,結(jié)合實(shí)例形式分析了Android自定義控件實(shí)現(xiàn)翻書(shū)效果的具體步驟與相關(guān)操作技巧,需要的朋友可以參考下2016-10-10

