I have a problem where this EditText ignores my maxLength completely.
<EditText
android:id="@+id/dialog_input"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="10dp"
android:inputType="numberPassword"
android:maxLength="4"
android:singleLine="true"
android:textColorHint="@color/primary_lighter"
android:textColor="@color/accent_harder"
android:hint="****"
/>
I can input how many characters I want.
This is a dialog and I cannot get the EditText by findViewById because its available programtaically when I press OK.
public void showNewQuestionDialog() {
final AlertDialog.Builder builder = new AlertDialog.Builder( this );
LayoutInflater inflater = this.getLayoutInflater();
builder.setView( inflater.inflate( R.layout.dialog_question_new, null ) )
.setPositiveButton( R.string.settings_ok, new DialogInterface.OnClickListener() {
@Override
public void onClick( DialogInterface thisDialog, int id ) {
Dialog dialog2 = Dialog.class.cast( thisDialog );
EditText input = ( EditText ) dialog2.findViewById( R.id.dialog_input );
// Other code here..
}
} );
.....
I solved it. The problem was this line:
android:singleLine="true"
If you ever experience the same problem, try removing this line.