由于某种原因,我无法在EditText中显示错误消息文本。我使用的是Xamarin.Android 4.16.0。我有一个简单的用例
private EditText _businessNameEdit;
_businessNameEdit = _rootView.FindViewById<EditText> (Resource.Id.editTextBusinessName);
//wire up save button handler
if (_saveButton != null) {
_saveButton.Click += (sender, e) => {
validateFormInput();
void validateFormInput ()
{
Drawable errorIcon = Resources.GetDrawable(Resource.Drawable.statuserror);
if (String.IsNullOrEmpty (_businessNameEdit.Text)) {
_businessNameEdit.Error = "Cannot be Empty";
_businessNameEdit.RequestFocus ();
//_businessNameEdit.SetCompoundDrawablesWithIntrinsicBounds(0, 0, Resource.Drawable.statuserror, 0);
}
} };
如果我执行editText.Error =“Some message”,默认的Android错误图标将显示没有消息,就像这样,如果我使用SetCompoundDrawablesWithIntrisicBounds(),它会显示我的自定义图像,而不显示消息。
答案 0 :(得分:2)
我的天啊,花了一整天才意识到这是一个主题问题。添加了
android:theme = "@android:style/Theme.Holo.Light"
到活动就是这样。
答案 1 :(得分:1)
可能文本颜色为白色,因此请尝试在错误消息中为文本设置不同的颜色:
_businessNameEdit.Error =
Html.fromHtml("<font color='black'>Cannot be Empty</font>");