GridePasswordView的輸入框

1.微信支付輸入框的輸入效果

手機號的中間4位可以輸入和刪除,點擊手機號位置可以彈出輸入框。看著很簡單,其實自己寫的話,會出現(xiàn)各種問題。

2.嘗試過的方法

不用想就知道,都失敗了,苦虐了我4天。真的都要崩潰了,想想還是自己太菜。

第一種:放了3TextView+4Editext+4TextView,通過鍵盤輸入給這個4Editext賦值。

問題1:怎么給每個方格設置只能放一個數(shù)字?

設置最大長度為1就可以

問題2:輸入完后,下一個方格怎么獲得焦點,繼續(xù)輸入?

請求焦點

問題3:刪除操作,刪除一個方格后,如果繼續(xù)刪除,怎么跳到上一個方格?

給Editext添加鍵盤刪除鍵的監(jiān)聽,鍵盤按鍵也屬于Key事件。

監(jiān)聽刪除操作

問題4:輸入框收起了,怎么在彈起來?

就是因為這個問題,沒有很好解決,所以這個方法失敗了。只有點擊那個獲取了焦點的Edietext才可以彈出鍵盤,不然不可以。這樣就會出現(xiàn)前面還沒輸入內容,就輸入這個。我要的連續(xù)輸入,刪除,不能隔空輸入。我也做了一下努力,給Editext添加焦點監(jiān)聽,通過判斷讓第一個空著的Editext獲取焦點,這個好像不可行。

第二種:放了11個TextView,發(fā)現(xiàn)怎么也彈不起鍵盤,后來才知道,必須有Editext才可以彈出鍵盤。通過它獲取焦點。

3.GridePasswordView需要改成部分可以輸入

這個控件的思想是有一個Editext,其他的是TextView。主要是通過Editext獲取焦點,彈起鍵盤的。監(jiān)控Editext的輸入流,來個TextView賦值。

4.效果圖


手機號驗證
輸入金額
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

友情鏈接更多精彩內容