Ответ 1
использовать getString(R.string.error_name)
Я обновился до android 6 и увидел некоторые странные вещи, пытаясь установить валидацию для некоторых editTexts. Я использую android-saripaar для проверки:
@Email(messageResId = R.string.error_email)
private EditText email;
@Password(min = 6, scheme = Password.Scheme.ALPHA_NUMERIC_MIXED_CASE_SYMBOLS)
private EditText password;
@ConfirmPassword
private EditText repassword;
@NotEmpty(messageResId = R.string.error_name)
private EditText firstname;
@NotEmpty(messageResId = R.string.error_name)
private EditText lastname;
private Validator mValidator;
По какой-то причине адрес электронной почты, пароль и пароль подтверждения не отображаются в всплывающем окне, в то время как последнее и первое имя прекрасны
Я пробовал без библиотеки и возникла такая же проблема. Использование editText.setError( "Некоторое сообщение" ) Это не произошло до андроида 6 и работало нормально на 5.
Кто-нибудь испытал подобное? если да, то как вы это исправили?
использовать getString(R.string.error_name)
Я думаю, что это связано с темой деятельности, это то, что я использую и работаю в android 6.0:
тема активности:
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
<!-- Customize your theme here. -->
<item name="colorPrimary">@color/colorPrimary</item>
<item name="colorPrimaryDark">@color/colorPrimaryDark</item>
<item name="colorAccent">@color/colorAccent</item>
</style>
код: обратите внимание, что я расширяю activity
not AppCompatActivity
myeditText.setError("Please enter valid email");
myeditText.setFocusable(true);
TRY @NotEmpty
аннотация в поле edittext электронной почты
@NotEmpty
@Email
private EditText email;