Monodroid:更改edittext样式(红色边框),然后返回默认样式

时间:2013-04-04 18:00:01

标签: android xamarin.android

我在某些条件下(使用形状)将红色边框设置为editext,之后我想回到默认的android风格的edittext。

我试过这样:

EditText lastName = FindViewById<EditText>(Resource.Id.lastName);
lastName.SetBackgroundResource(Android.Resource.Drawable.EditBoxBackgroundNormal);

它显示长白条而不是默认的edittext样式(黑色背景和灰线)。

我如何获得此默认样式的edittext?

2 个答案:

答案 0 :(得分:1)

如何设置“错误”标志?我没有删除背景Drawable,而是将其设置为:

myEditText.SetCompoundDrawablesWithIntrinsicBounds(0 , 0, Resource.Drawable.MyErrorIcon, 0);

其中myEditTextEditText的实例,而Resource.Drawable.MyErrorIcon是您要显示的图标的Drawable

您可以使用以下命令将其删除:

myEditText.SetCompoundDrawablesWithIntrinsicBounds(0 , 0, 0, 0);

通过设置CompoundDrawables,您将永远不需要触及EditText的背景资源。

答案 1 :(得分:0)

Android使用属性将正确的drawable映射到api级别,应用程序主题,设备配置等。尝试使用以下代码行。

lastName.SetBackgroundResource(Android.Resource.Attribute.EditTextBackground);