如何使Android中的EditText只從Java文件獲取數字輸入,而不是從XML獲取? 另外我需要使它成爲一個密碼字段,允許最多6分鐘?如何從java文件在Android中創建EditText
我檢查Android: How do you create an EditText feild in java class
和How to create EditText numeric (signed and unsigned decimal) from java code
如何使Android中的EditText只從Java文件獲取數字輸入,而不是從XML獲取? 另外我需要使它成爲一個密碼字段,允許最多6分鐘?如何從java文件在Android中創建EditText
我檢查Android: How do you create an EditText feild in java class
和How to create EditText numeric (signed and unsigned decimal) from java code
這是XML容易。 這是我們如何做這個java文件。
EditText et = new EditText(context);
// setting input type filter
et.setInputType(InputType.TYPE_CLASS_NUMBER);
// setting input max length
InputFilter maxLengthFilter = new InputFilter.LengthFilter(inp.getLength());
et.setFilters((new InputFilter[]{ maxLengthFilter }));
// settin it to password
et.setTransformationMethod(PasswordTransformationMethod.getInstance());
使用setInputType到一個或多個這些值:
http://developer.android.com/reference/android/widget/TextView.html#attr_android:inputType
我在XML
做到了這一點,只是在<EditText />
android:numeric="decimal
這樣做:
LinearLayout mLinearLayout = new LinearLayout(this);
mLinearLayout = (LinearLayout)findViewById(R.id.mylinearlayout);
Button lButton = (Button)findViewById(R.id.mybtnid);
lButton.setOnClickListener(new View.OnClickListener() {
public void onClick(View arg0) {
EditText lEditText = new EditText(this);
lEditText .setLayoutParams(new LinearLayout.LayoutParams(LayoutParams.FILL_PARENT,
LayoutParams.WRAP_CONTENT));
lEditText.SetText("Text Here");
mLinearLayout.addView(lEditText);
EditorInfo ed = new EditorInfo();
ed.inputType = InputType.TYPE_CLASS_PHONE;
lEditText.setInputType(ed.inputType);
InputFilter[] FilterArray = new InputFilter[1];
FilterArray[0] = new InputFilter.LengthFilter(6);
lEditText.setFilters(FilterArray);
或查看blog的限制最大長度
阿迪亞答案有方法的密碼,我認爲這是更好
問候
PLZ看@我awnser我認爲這會有所幫助 –