EditText不得包含<字符

时间:2018-03-25 07:31:28

标签: android xml validation

我的Android应用程序有一个用于电子邮件的EditText字段,用户可以在其中输入。

但是我试图限制EditText的选项,以便用户可以输入允许的字符作为电子邮件地址。 所以这是我的代码

<EditText
    android:id="@+id/sign_up_password_edit_text"
    style="@style/SignUpEditTextStyle"
    android:hint="@string/password"
    android:inputType="textPassword"
    android:digits="abcdefghijklmnopqrstuvwxyz ABCDEFGHIJKLMNOPQRSTUVWXYZ 0123456789 !#$%&amp;'*+-/=?^_`{|}~ (),:;@[\]<>"
   />

但是在尝试编译和运行项目时,我收到了这个错误:

错误:任务&#39;:app:mergeDebugResources&#39;执行失败。

  

错误:属性的值&#34; android:digits&#34;与元素类型相关联&#34; EditText&#34;不得包含&#39;&lt;&#39;字符

我该如何解决这个问题并加入&#39;&lt;&#39;字符?

3 个答案:

答案 0 :(得分:5)

您需要像网址一样对其进行编码。

在您的情况下:使用&gt;代表&lt;,&lt;代表&gt;。有关更多信息,请查看this

答案 1 :(得分:2)

请参阅xml特殊字符文档here

答案 2 :(得分:0)

在XML上转义字符,

"   &quot;
'   &apos;
<   &lt;
>   &gt;
&   &amp;