久久久久久久av_日韩在线中文_看一级毛片视频_日本精品二区_成人深夜福利视频_武道仙尊动漫在线观看

以編程方式將 EditText 的輸入類型從 PASSWORD 更改為

Programmatically change input type of the EditText from PASSWORD to NORMAL amp; vice versa(以編程方式將 EditText 的輸入類型從 PASSWORD 更改為 NORMAL amp;反之亦然)
本文介紹了以編程方式將 EditText 的輸入類型從 PASSWORD 更改為 NORMAL &反之亦然的處理方法,對大家解決問題具有一定的參考價值,需要的朋友們下面隨著小編來一起學習吧!

問題描述

在我的應用程序中,我有一個 EditText,其默認輸入類型默認設置為 android:inputType="textPassword".它的右側有一個 CheckBox,當它被選中時,會將該 EditText 的輸入類型更改為 NORMAL PLAIN TEXT.代碼是

In my application, I have an EditText whose default input type is set to android:inputType="textPassword" by default. It has a CheckBox to its right, which is when checked, changes the input type of that EditText to NORMAL PLAIN TEXT. Code for that is

password.setInputType(InputType.TYPE_TEXT_VARIATION_VISIBLE_PASSWORD);

我的問題是,當取消選中 CheckBox 時,它應該再次將輸入類型設置為 PASSWORD.我已經使用了-

My problem is, when that CheckBox is unchecked it should again set the input type to PASSWORD. I've done it using-

password.setInputType(InputType.TYPE_TEXT_VARIATION_PASSWORD);

但是,edittext 中的文本仍然可見.令人驚訝的是,當我改變方向時,它會自動將輸入類型設置為 PASSWORD 并且里面的文本是項目符號(顯示為密碼).

But, the text inside that edittext is still visible. And for surprise, when I change the orientation, it automatically sets the input type to PASSWORD and the text inside is bulleted (shown like a password).

有什么方法可以做到這一點?

Any way to achieve this?

推薦答案

以編程方式向該 EditText 添加一個額外的屬性,您就完成了:

Add an extra attribute to that EditText programmatically and you are done:

password.setInputType(InputType.TYPE_CLASS_TEXT | InputType.TYPE_TEXT_VARIATION_PASSWORD);

對于數字密碼(pin):

For numeric password (pin):

password.setInputType(InputType.TYPE_CLASS_NUMBER | InputType.TYPE_NUMBER_VARIATION_PASSWORD);

另外,請確保光標位于 EditText 中文本的末尾,因為當您更改輸入類型時,光標將自動設置為起始點.所以我建議使用以下代碼:

Also, make sure that the cursor is at the end of the text in the EditText because when you change the input type the cursor will be automatically set to the starting point. So I suggest using the following code:

et_password.setInputType(InputType.TYPE_CLASS_TEXT | InputType.TYPE_TEXT_VARIATION_PASSWORD);
et_password.setSelection(et_password.getText().length());

使用數據綁定時,可以使用如下代碼:

When using Data Binding, you can make use of the following code:

<data>
        <import type="android.text.InputType"/>
.
.
.
<EditText
android:inputType='@{someViewModel.isMasked ? 
(InputType.TYPE_CLASS_TEXT | InputType.TYPE_TEXT_VARIATION_PASSWORD) :
InputType.TYPE_CLASS_TEXT }'

如果使用 Kotlin:

If using Kotlin:

password.inputType = InputType.TYPE_CLASS_TEXT or InputType.TYPE_TEXT_VARIATION_PASSWORD

這篇關于以編程方式將 EditText 的輸入類型從 PASSWORD 更改為 NORMAL &amp;反之亦然的文章就介紹到這了,希望我們推薦的答案對大家有所幫助,也希望大家多多支持html5模板網!

【網站聲明】本站部分內容來源于互聯網,旨在幫助大家更快的解決問題,如果有圖片或者內容侵犯了您的權益,請聯系我們刪除處理,感謝您的支持!

相關文檔推薦

EditText: Disable Paste/Replace menu pop-up on Text Selection Handler click event(EditText:禁用文本選擇處理程序單擊事件上的粘貼/替換菜單彈出)
Multiline EditText with Done SoftInput Action Label on 2.3(2.3 上帶有完成 SoftInput 操作標簽的多行 EditText)
How to detect the swipe left or Right in Android?(如何在 Android 中檢測向左或向右滑動?)
Prevent dialog dismissal on screen rotation in Android(防止在Android中的屏幕旋轉對話框解除)
How do I handle ImeOptions#39; done button click?(如何處理 ImeOptions 的完成按鈕點擊?)
How do you set EditText to only accept numeric values in Android?(您如何將 EditText 設置為僅接受 Android 中的數值?)
主站蜘蛛池模板: 三级在线视频 | 久草资源在线视频 | 欧美日韩在线观看一区 | 日本三级电影在线观看视频 | 亚洲一区国产精品 | 成人国产精品久久久 | 求毛片| 国产高清在线观看 | 亚洲国产成人精品女人久久久野战 | 亚洲久久久 | 成人免费视频在线观看 | 亚洲综合激情 | 四虎影视免费在线 | 成年人网站免费 | 蜜桃色网| 日韩1区2区| 成人在线视频网 | 欧美一区二区大片 | 久久国产欧美日韩精品 | 欧美精品成人一区二区三区四区 | 国产精品久久 | 亚洲国产二区 | 99精品国产一区二区三区 | 成人三级在线观看 | 久久久久久成人 | 成人网在线观看 | 人人看人人草 | a级片网站| 九九精品热| 狠狠色综合网站久久久久久久 | 91视频a| 一区二区三区视频在线观看 | 亚洲第一成人影院 | 欧美成人h版在线观看 | 两性午夜视频 | 国产精品精品视频一区二区三区 | 在线一区二区三区 | 欧美成人a∨高清免费观看 色999日韩 | 中文av字幕 | 成人免费共享视频 | 新疆少妇videos高潮 |