包含撇号的Android TextView链接电子邮件

时间:2013-07-24 10:41:13

标签: android textview apostrophe

我有一个TextView:

<TextView
    android:text="Contact details go here"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:id="@+id/tvContactDetails"
    android:autoLink="email" />

然后我输入了一个电子邮件地址(我正在使用Monodroid,但这里没有任何区别):

TextView tvContactDetails = FindViewById(Resource.Id.tvContactDetails)
tvContactDetails.Text = sEmail;

如果我给它一个像joe@bloggs.com这样的电子邮件地址,那很好。但是当我给它kevin.o'donnel@abc.com时,它只链接donnel@abc.com。如何将撇号识​​别为电子邮件地址的一部分?

1 个答案:

答案 0 :(得分:0)

经过一段时间的搜索和尝试,我找到了一个适合我的解决方案:

TextView to send email when clicked

TextView现在看起来像这样:

<TextView
    android:text="Contact details go here"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:id="@+id/tvContactDetails"/>
(autoLink taken out)

现在代码如下:

TextView tvContactDetails = FindViewById(Resource.Id.tvContactDetails)
string sHtmlEmail = "<a href=\"mailto:" + sEmail + "\">" + sEmail + "</a>";
tvContactDetails.TextFormatted = Html.FromHtml(sHtmlEmail);
tvContactDetails.MovementMethod = Android.Text.Method.LinkMovementMethod.Instance;

感谢您的建议。