androidedittext密碼
⑴ android EditText密碼框,怎麼讓它只顯示密碼點,不顯示最後一位輸入的字元
布局裡加上這一句:
android:inputType="textPassword"就好了。
方法1::
在布局文件中設置文本編輯框屬性作字元數限制,android:maxLength="10" 即限制最大輸入字元個數為10。
方法2:在代碼中使用InputFilter 進行過濾
{
privateEditTexttext;
@Override
publicvoidonCreate(BundlesavedInstanceState)
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
text=(EditText)findViewById(R.id.text);
text.setFilters(newInputFilter[]{newInputFilter.LengthFilter(20)});
}
}
方法3:利用 TextWatcher 進行監聽
繼承TextWatcher介面,對輸入進行監聽
{
privateintmaxLen=0;
privateEditTexteditText=null;
publicMaxLengthWatcher(intmaxLen,EditTexteditText){
this.maxLen=maxLen;
this.editText=editText;
}
publicvoidonTextChanged(CharSequences,intstart,intbefore,intcount){
//TODOAuto-generatedmethodstub
Editableeditable=editText.getText();
intlen=editable.length();
if(len>maxLen)
{
intselEndIndex=Selection.getSelectionEnd(editable);
Stringstr=editable.toString();
//截取新字元串
StringnewStr=str.substring(0,maxLen);
editText.setText(newStr);
editable=editText.getText();
//新字元串的長度
intnewLen=editable.length();
//舊游標位置超過字元串長度
if(selEndIndex>newLen)
{
selEndIndex=editable.length();
}
//設置新游標所在的位置
Selection.setSelection(editable,selEndIndex);
}
}
@Override
publicvoidbeforeTextChanged(CharSequences,intstart,intcount,
intafter){
}
@Override
publicvoidafterTextChanged(Editables){
}
}
在activity中為EditText添加監聽
{
privateEditTexttext;
@Override
publicvoidonCreate(BundlesavedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
text=(EditText)findViewById(R.id.entry);
//限制為10
text.addTextChangedListener(newMaxLengthWatcher(10,editText));
}
}
⑵ android 怎麼讓edittext密碼正則表達式
密碼還要正則表達式。。。這是什麼需求。。。。
如果你說的是:控制只能輸入數字、大小寫、_等 可以在EditText中添加屬性android:digits來進行控制(輸入用戶可以輸入的字元)
回答你的問題:只能在代碼中進行判斷,比如用戶點擊確定的時候進行正則表達式的判斷,如果失敗則提示用戶密碼不合法
⑶ Android EditText 密碼框默認是小圓點 怎麼改成其它的(*)
Android:inputType="textPassword"或者android:password="true"是設置EditText為密碼模式的。推薦的是用Android:inputType="textPassword"。如果不加這兩個屬性,就不會是小圓點了。EditText默認是正常的,不會是小圓點的。
⑷ android edittext 控制輸入多少個字元
可以對輸入長度進行設置就可以了
1、第一種方式是通過EditText的inputType來實現,可以通過xml或者java文件來設置。假如我要設置為顯示密碼的形式,可以像下面這樣設置:
在xml中, android:inputType="textPassword"
在java文件中,可以用 myEditText.setInputType(InputType.TYPE_TEXT_VARIATION_PASSWORD);
當然,還有更多的其他屬性用來進行輸入設置。
2、第二種是通過android:digits 屬性來設置,這種方式可以指出要顯示的字元,比如我要限制只顯示數字,可以這樣:
android:digits="0123456789"
⑸ android EditText 如何 才能默認彈出的鍵盤為數字鍵盤,同時又是顯示成密碼的小圓點
設置type 為number
⑹ 如何動態設置EditText輸入的文字為密碼形式
在android開發過程中,要設置EditText的輸入內容為密碼的時候,我們只需要設置
android:password="true"就可以了,但是如果要動態生成布局上的EditText顯示內容為password的形式該怎麼設置呢。
也許你會說,在Activity中new一個EditText,然後想當然的找setPassword()的方法,那你就錯了,因為在Activity中
new出來的EditText根本就沒有這個方法,所以很是無理,但是Activity中提供了另外一個方法,那就是
setTransformationMethod(),不過還要給它提供參數setTransformationMethod(PasswordTransformationMethod.getInstance()),這樣你就可以動態設置EditText輸入的內容為密碼顯示的功能了
⑺ android 後面代碼怎麼設置edittext的值
1、EditText輸入的文字為密碼形式的設置
(1)通過.xml里設置:
把該EditText設為:android:password="true" // 以」.」形式顯示文本
(2)在代碼里設置:
通過設置EditText的setTransformationMethod()方法來實現隱藏密碼或這顯示密碼。
editText.setTransformationMethod(PasswordTransformationMethod.getInstance());//設置密碼為不可見。
2、(1)EditText輸入的文字為電話號碼
Android:phoneNumber=」true」 //輸入電話號碼
3、EditText字數限制的設置
(1)在.xml中設置:android:maxLength=「50」
(2)代碼中設置:
editText.setFilters(new InputFilter[]{newInputFilter.LengthFilter(100)});
4、EditText設置字體
android:typeface="monospace" //設置字型。字形有:normal, sans, serif,monospace
5、EditText是否可編輯
Android:editable // 是否可編輯
6、在EditText中軟鍵盤的調起、關閉
(1)EditText有焦點(focusable為true)阻止輸入法彈出
editText=(EditText)findViewById(R.id.txtBody);
editText.setOnTouchListener(new OnTouchListener(){
public boolean onTouch(View v, MotionEvent event){
editText.setInputType(InputType.TYPE_NULL); //關閉軟鍵盤
return false;
}
});
(2)當EidtText無焦點(focusable=false)時阻止輸入法彈出
InputMethodManager imm =
(InputMethodManager)getSystemService(INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(editText.getWindowToken(),0);
(3)調用數字鍵盤並設置輸入類型和鍵盤為英文
etNumber.setInputType(InputType.TYPE_CLASS_NUMBER); //調用數字鍵盤
rlEditText.setInputType(InputType.TYPE_TEXT_FLAG_MULTI_LINE);//設置輸入類型和鍵盤為英文 或者:android:inputType="textUri|textMultiLine"
(4)android:focusable="false"//鍵盤永遠不會彈出
<activity android:name=".AddLinkman"android:windowSoftInputMode="adjustUnspecified|stateHidden"/>//不自動彈出鍵盤
//關閉鍵盤(比如輸入結束後執行) InputMethodManager imm =(InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE); imm.hideSoftInputFromWindow(etEditText.getWindowToken(), 0);
//自動彈出鍵盤
((InputMethodManager)getSystemService(INPUT_METHOD_SERVICE)).toggleSoftInput(0,InputMethodManager.HIDE_NOT_ALWAYS);
etEditText.requestFocus();//讓EditText獲得焦點,但是獲得焦點並不會自動彈出鍵盤
7、android:layout_gravity和android:gravity的區別
(1)android:layout_gravity是本元素對父元素的重力方向。
(2)android:gravity是本元素所有子元素的重力方向。
8、android:padding和android:layout_margin區別
這兩個都可以設置邊距,但有細微的區別:
(1)android:padding是相對父view的邊距
(2)android:layout_margin是相對同一級View的邊距
例:LinearLayout是水平布局,下面有兩個按鈕,
(a)如果右邊的按鈕想距左邊的按鈕15px,因為這兩個按鈕是同一級的,應該用android:layout_margin;
(b)如果右邊的按鈕想距左邊的距離為350px,應該用android:padding
9、android:numeric//只接受數字
android:numeric來控制輸入的數字類型,一共有三種分別為integer(正整數)、signed(帶符號整數,有正負)和decimal(浮點數)。
⑻ android怎樣用代碼改變EditText的passWord屬性的值
mCheckBoxView = (CheckBox) findViewById(R.id.settings_synch_delet);
mEditTextView = (EditText) findViewById(R.id.account_password);
mCheckBoxView.setOnCheckedChangeListener(checkBox_Listener);
private CheckBox.OnCheckedChangeListener checkBox_Listener = new CheckBox.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton buttonView,boolean isChecked) {
if(mCheckBoxView.isChecked()){
//文本正常顯示
mEditTextView.setInputType(InputType.TYPE_TEXT_VARIATION_VISIBLE_PASSWORD);
Editable etable = mEditTextView.getText();
Selection.setSelection(etable, etable.length());
}else{
//文本以密碼形式顯示
mEditTextView.setInputType(InputType.TYPE_CLASS_TEXT | InputType.TYPE_TEXT_VARIATION_PASSWORD);
//下面兩行代碼實現: 輸入框游標一直在輸入文本後面
Editable etable = mEditTextView.getText();
Selection.setSelection(etable, etable.length());
}
}
};
希望能幫到你 幫到你了 請採納 謝謝