日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > Android >内容正文

Android

android触摸外部关闭键盘,如何隐藏Android上的软键盘,点击外部EditText?

發布時間:2025/3/19 Android 22 豆豆
生活随笔 收集整理的這篇文章主要介紹了 android触摸外部关闭键盘,如何隐藏Android上的软键盘,点击外部EditText? 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

下面的代碼片段簡單地隱藏了鍵盤:public?static?void?hideSoftKeyboard(Activity?activity)?{

InputMethodManager?inputMethodManager?=

(InputMethodManager)?activity.getSystemService(

Activity.INPUT_METHOD_SERVICE);

inputMethodManager.hideSoftInputFromWindow(

activity.getCurrentFocus().getWindowToken(),?0);}

您可以將其放在實用程序類中,或者如果要在活動中定義它,請避免使用活動參數,或調用hideSoftKeyboard(this).

最棘手的部分是什么時候叫它。您可以編寫一個方法來迭代View在您的活動中,并檢查它是否為instanceof EditText如果它不是注冊setOnTouchListener所有的東西都會就位。如果您想知道如何做到這一點,這實際上是相當簡單的。下面是您所做的工作,您可以編寫如下所示的遞歸方法,實際上您可以使用它來做任何事情,比如安裝自定義字體等等.這是方法public?void?setupUI(View?view)?{

//?Set?up?touch?listener?for?non-text?box?views?to?hide?keyboard.

if?(!(view?instanceof?EditText))?{

view.setOnTouchListener(new?OnTouchListener()?{

public?boolean?onTouch(View?v,?MotionEvent?event)?{

hideSoftKeyboard(MyActivity.this);

return?false;

}

});

}

//If?a?layout?container,?iterate?over?children?and?seed?recursion.

if?(view?instanceof?ViewGroup)?{

for?(int?i?=?0;?i?

View?innerView?=?((ViewGroup)?view).getChildAt(i);

setupUI(innerView);

}

}}

僅此而已,只需在您之后調用此方法即可。setContentView在你的活動中。如果您想知道您將傳遞哪個參數,則是id父容器的。分配id到父容器,如

...

打電話setupUI(findViewById(R.id.parent))僅此而已。

如果您想有效地使用它,您可以創建一個擴展Activity并將此方法放入應用程序中,并使應用程序中的所有其他活動擴展該活動并調用其setupUI()在onCreate()方法。

希望能幫上忙。

如果使用了多個活動,請定義公共id到父級布局,如 ...

然后將類擴展到Activity并定義setupUI(findViewById(R.id.main_parent))在其OnResume()并擴展該類,而不是“活動”in your program

總結

以上是生活随笔為你收集整理的android触摸外部关闭键盘,如何隐藏Android上的软键盘,点击外部EditText?的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。