I am not new to the use of EditText
's inputType
but now I am having issue when setting android:inputType="textPassword"
beside using android:imeOptions="actionDone"
Device used is: LG G4 Android v6.0
Here is my code:
<android.support.design.widget.TextInputLayout
android:id="@+id/input_layout_password"
style="@style/TextInputLayoutLoginTheme"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/default_padding_2"
app:passwordToggleDrawable="@drawable/ic_password_visibility_18dp_selector"
app:passwordToggleTint="@color/white">
<com.cashu.app.ui.widgets.CustomEditText
android:id="@+id/et_activity_login_password"
style="@style/EditTextPasswordTheme"
android:layout_width="@dimen/edittext_width"
android:layout_height="wrap_content"
android:ems="12"
android:gravity="center_vertical"
android:hint="@string/activity_consumer_login_password_hint"
android:imeOptions="actionDone"
android:inputType="textPassword"
android:maxLines="1"
android:textColor="@color/white"
android:textSize="@dimen/font_size_small" />
</android.support.design.widget.TextInputLayout>
My code for this EidtText
:
mEtPassword.setOnEditorActionListener(new EditText.OnEditorActionListener() {
public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
if ((actionId & EditorInfo.IME_MASK_ACTION) > 0 || actionId == EditorInfo.IME_NULL) {
login();
return true;
}
return false;
}
});
mEtPassword.addTextChangedListener(new LoginTextWatcher(mEtPassword));
This is not working on my LG G4's device as well the onEditorAction
method is not either called !
I tried so many searches and uses other people solutions but it seems a manufacturer issue !
Finally, I figured it out.
I added this xml property to my EditText
:
android:singleLine="true"
I know its deprecated, but android:maxLines="1"
not working although its the replacement for singleLine
.
I also removed this:
android:imeOptions="actionDone"
Thank you guys for trying to help me.