如何在Android中设置EditText的最大字符数?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在Android中设置EditText的最大字符数?相关的知识,希望对你有一定的参考价值。
如何设置android EditText输入的最大字符数?我看到setMaxLines,setMaxEMS,但没有任何字符数。
答案
在XML中,您可以将此行添加到EditText
View
,其中140是最大字符数:
android:maxLength="140"
另一答案
动态:
editText.setFilters(new InputFilter[] { new InputFilter.LengthFilter(MAX_NUM) });
Zia Xml:
<EditText
android:maxLength="@integer/max_edittext_length"
另一答案
你可以使用InputFilter,就是这样:
EditText myEditText = (EditText) findViewById(R.id.editText1);
InputFilter[] filters = new InputFilter[1];
filters[0] = new InputFilter.LengthFilter(10); //Filter to 10 characters
myEditText .setFilters(filters);
另一答案
这可能有所帮助:
- http://www.tutorialforandroid.com/2009/02/maxlength-in-edittext-using-codes.html
- http://www.anddev.org/edit_text_max_limit_charactars-t1925.html
另一答案
我总是像这样设置最大值:
<EditText
android:id="@+id/edit_blaze_it
android:layout_width="0dp"
android:layout_height="@dimen/too_high"
<!-- This is the line you need to write to set the max-->
android:maxLength="420"
/>
另一答案
它对我有用。
etMsgDescription.setFilters(new InputFilter[] {new InputFilter.LengthFilter(maximum_character)});
etMsgDescription.addTextChangedListener(new TextWatcher() {
@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {
tvCharacterLimite.setText(" "+String.valueOf(maximum_character - etMsgDescription.getText().length()));
}
@Override
public void beforeTextChanged(CharSequence s, int start, int count,
int after) {
// TODO Auto-generated method stub
}
@Override
public void afterTextChanged(Editable s) {
// TODO Auto-generated method stub
}
});
另一答案
这对我有用,这是我发现的最好的。它的最大长度为200个字符
editObservations.addTextChangedListener(new TextWatcher() {
@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {
if (editObservations.getText().length() >= 201){
String str = editObservations.getText().toString().substring(0, 200);
editObservations.setText(str);
editObservations.setSelection(str.length());
}
}
@Override
public void beforeTextChanged(CharSequence s, int start, int count,
int after) {
}
@Override
public void afterTextChanged(Editable s) {
}
});
另一答案
<EditText
android:id="@+id/edtName"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="Enter device name"
android:maxLength="10"
android:inputType="textFilter"
android:singleLine="true"/>
InputType必须设置“textFilter”
android:inputType="textFilter"
另一答案
在任何地方使用此功能:
public static void setEditTextMaxLength(EditText editText, int length) {
InputFilter[] FilterArray = new InputFilter[1];
FilterArray[0] = new InputFilter.LengthFilter(length);
editText.setFilters(FilterArray);
}
以上是关于如何在Android中设置EditText的最大字符数?的主要内容,如果未能解决你的问题,请参考以下文章
Android 中设置EditText输入框提示文本hint的字体大小