淺談關(guān)于android軟鍵盤彈出問(wèn)題
問(wèn)題:
今天公司項(xiàng)目處理一個(gè)軟鍵盤彈出的邏輯,要求點(diǎn)擊按鈕之后彈出軟鍵盤。
實(shí)現(xiàn)代碼如下:
//獲取焦點(diǎn) editText.setFocusable(true); editText.setFocusableInTouchMode(true); editText.requestFocus(); //彈出軟鍵盤 InputMethodManager imm = (InputMethodManager) editText.getContext( ).getSystemService(Context.INPUT_METHOD_SERVICE); imm.showSoftInput(editText,0);
在正常的一個(gè)activity按照上面是可以實(shí)現(xiàn)的,但是我遇到的問(wèn)題是加載數(shù)據(jù)顯示之后點(diǎn)擊按鈕改變了布局的顯示狀況,然后再想彈出軟鍵盤,但是一直無(wú)法彈出鍵盤
通過(guò)查閱網(wǎng)上資料,給出的解析是在布局加載的過(guò)程中是無(wú)法彈出軟鍵盤的,所以需要適當(dāng)?shù)难舆t一下軟鍵盤的彈出
最終代碼如下:
//獲取焦點(diǎn) editText.setFocusable(true); editText.setFocusableInTouchMode(true); editText.requestFocus(); //延遲彈出軟鍵盤 Timer timer = new Timer(); timer.schedule(new TimerTask(){ @Override public void run() { InputMethodManager imm = (InputMethodManager) editText.getContext( ).getSystemService(Context.INPUT_METHOD_SERVICE); imm.showSoftInput(editText,InputMethodManager.SHOW_FORCED); } }, 300);
使用上面代碼就實(shí)現(xiàn)了強(qiáng)制彈出軟鍵盤的問(wèn)題.
另附其他軟鍵盤常用方法:
1.如果軟鍵盤已彈出則隱藏,反之彈出.
InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE); imm.toggleSoftInput(0, InputMethodManager.HIDE_NOT_ALWAYS);
2.隱藏軟鍵盤
InputMethodManager imm = ( InputMethodManager ) v.getContext( ).getSystemService( Context.INPUT_METHOD_SERVICE ); if ( imm.isActive( ) ) { imm.hideSoftInputFromWindow( v.getApplicationWindowToken( ) , 0 );
3.顯示軟鍵盤
InputMethodManager imm = ( InputMethodManager ) v.getContext( ).getSystemService( Context.INPUT_METHOD_SERVICE ); imm.showSoftInput(v,InputMethodManager.SHOW_FORCED);
ps:其實(shí)通過(guò)系統(tǒng)服務(wù)取得的InputMethodManager 應(yīng)該需要判斷是否為null,這里偷懶了,大家記得判斷一下
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- Android自定義輸入法軟鍵盤
- android 軟鍵盤的POPUP布局的問(wèn)題解決
- Android禁止EditText自動(dòng)彈出軟鍵盤的方法及遇到問(wèn)題
- 解決Android軟鍵盤彈出覆蓋h5頁(yè)面輸入框問(wèn)題
- 5種方法完美解決android軟鍵盤擋住輸入框方法詳解
- Android開發(fā)之超實(shí)用的系統(tǒng)管理工具類【SD卡,網(wǎng)絡(luò),uri,屏幕,網(wǎng)絡(luò),軟鍵盤,文本,進(jìn)程等】
- Android開發(fā)之彈出軟鍵盤工具類簡(jiǎn)單示例
- Android開發(fā)中軟鍵盤的顯示和隱藏
- 詳解Android中獲取軟鍵盤狀態(tài)和軟鍵盤高度
- Android 實(shí)現(xiàn)數(shù)字九宮格軟鍵盤
相關(guān)文章
如何在Android中實(shí)現(xiàn)左右滑動(dòng)的指引效果
本篇文章是對(duì)在Android中實(shí)現(xiàn)左右滑動(dòng)指引效果的方法進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下2013-06-06Android5.1 取消錄制屏幕跳出的權(quán)限對(duì)話框問(wèn)題
這篇文章主要介紹了Android5.1 取消錄制屏幕跳出的權(quán)限對(duì)話框問(wèn)題,需要的朋友可以參考下2017-04-04安卓(Android)聊天機(jī)器人實(shí)現(xiàn)代碼分享
這是一個(gè)安卓智能聊天機(jī)器人的源碼,采用了仿微信的風(fēng)格設(shè)計(jì),調(diào)用的是圖靈機(jī)器人的API,能夠?qū)崿F(xiàn)智能聊天、講故事、講笑話、查天氣、查公交等豐富的功能2015-11-11Android實(shí)現(xiàn)個(gè)人資料頁(yè)面頭像背景模糊顯示包(狀態(tài)欄)
這篇文章主要介紹了Android實(shí)現(xiàn)個(gè)人資料頁(yè)面頭像背景模糊顯示包括狀態(tài)欄,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下2017-03-03Android之自定義實(shí)現(xiàn)BaseAdapter(通用適配器一)
這篇文章主要為大家詳細(xì)介紹了Android之自定義實(shí)現(xiàn)BaseAdapter通用適配器第一篇,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-08-08Android自定義鍵盤的實(shí)現(xiàn)(數(shù)字鍵盤和字母鍵盤)
本篇文章主要介紹了Android自定義鍵盤的實(shí)現(xiàn)(數(shù)字鍵盤和字母鍵盤),具有一定的參考價(jià)值,有興趣的可以了解一下2017-08-08Flutter 封裝一個(gè) Banner 輪播圖效果的實(shí)例代碼
這篇文章主要介紹了Flutter 封裝一個(gè) Banner 輪播圖效果,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-07-07android自定義按鈕示例(重寫imagebutton控件實(shí)現(xiàn)圖片按鈕)
由于項(xiàng)目這種類型的圖片按鈕比較多,所以重寫了ImageButton類,現(xiàn)在把代碼分享給大家,需要的朋友可以參考下2014-03-03