2014-11-14 122 views
0

如何超鏈接電子郵件地址,以便在單擊它時將用戶從我的strings.xml中接收到合成電子郵件。在我的strings.xml文件,我的超鏈接文本進行正常的URL與下列內容:strings.xml文件中的超鏈接電子郵件地址?

<![CDATA[<a href="http://google.com">Google website example</a>]]> 

我試圖用類似的技術用於電子郵件,但是什麼也沒有發生。

<![CDATA[<a href="mailto:[email protected]">Email example</a>]]> 

我在做什麼錯了?在此先感謝

回答

1

您可以使用Linkify類。 你有定期的字符串在XML文件中,如:

<string name="myemail">[email protected]</string> 

,然後在你的代碼:

String message="Some message "; 
message=message+getResources().getText(R.string.myemail); 
final SpannableString mes = new SpannableString(message); 
Linkify.addLinks(mes, Linkify.EMAIL_ADDRESSES); 

//TextView  
final TextView tx1=new TextView(this); 
tx1.setText(mes); 
tx1.setTextSize(TypedValue.COMPLEX_UNIT_SP, 20); 
tx1.setAutoLinkMask(RESULT_OK); 
tx1.setMovementMethod(LinkMovementMethod.getInstance()); 

然後,在TextView的你將有電子郵件文本可點擊的鏈接。

+0

讓我試試這個。這可能正是我需要的。謝謝! – portfoliobuilder 2014-11-14 21:39:05

0

,你可以用其他方式,你可以使用字符串基本的HTML如實例

<string name="send_mail"><![CDATA[ <a href="mailto:[email protected]">email us</a>]]></string> 

而且如例如

AlertDialog.Builder builder = new AlertDialog.Builder(this); 
builder.setTitle("Data") 
    .setIcon(R.drawable.info) 
    .setMessage(Html.fromHtml(R.string.send_mail) 
    .setCancelable(true) 
    .setNegativeButton("OK",null); 

AlertDialog welcomeAlert = builder.create(); 
welcomeAlert.show(); 
// Make the textview clickable. Must be called after show() 
((TextView)welcomeAlert.findViewById(android.R.id.message)).setMovementMethod(LinkMovementMethod.getInstance()); 

有關更多詳細信息創建AlertDialog,請看看這個問題Link