Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/206.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 字符串中的电子邮件资源_Android_String - Fatal编程技术网

Android 字符串中的电子邮件资源

Android 字符串中的电子邮件资源,android,string,Android,String,我在字符串资源中有一个电子邮件地址: <string name="send_email">Send us an email app@example.com</string> 给我们发封电子邮件app@example.com 此字符串资源是具有适配器的listView正在使用的字符串数组的一部分 有没有办法让电子邮件地址成为一个链接,这样它会在点击后打开邮件客户端? 我已经看过了,但从我所看到的来看,它只适用于文本视图 有什么想法吗 谢谢 单击邮件地址,只需使用下面的代

我在字符串资源中有一个电子邮件地址:

<string name="send_email">Send us an email app@example.com</string>
给我们发封电子邮件app@example.com
此字符串资源是具有适配器的listView正在使用的字符串数组的一部分

有没有办法让电子邮件地址成为一个链接,这样它会在点击后打开邮件客户端? 我已经看过了,但从我所看到的来看,它只适用于文本视图

有什么想法吗


谢谢

单击邮件地址,只需使用下面的代码调用

Intent intent = new Intent(Intent.ACTION_SEND);
intent.setType("plain/text");
intent.putExtra(Intent.EXTRA_EMAIL, new String[] { "myemail@email.address" });// selected email adress.
intent.putExtra(Intent.EXTRA_SUBJECT, "subject");
intent.putExtra(Intent.EXTRA_TEXT, "mail body");
startActivity(Intent.createChooser(intent, ""));

在用电子邮件地址填充的listitem的xml视图中,将其添加到xml中

android:autoLink="email"

您还可以使用该类在列表中单击每个链接和电子邮件地址。是的,它可以在TextView上工作,但是Listview包含您可以访问的TextView。您可以为Listview适配器使用自定义视图,也可以使用android提供的标准简单视图,但这些视图也包括您可以访问的文本视图。

您可以使用以下代码使文本可链接:

SpannableString ss1=  new SpannableString(s);
        ss1.setSpan(new RelativeSizeSpan(1.1f), 0,6, 0); // set size
        ss1.setSpan(new ForegroundColorSpan(Color.RED), 0, 6, 0);// It will set first six letter to red color
        SpannableString ss = new SpannableString("Click here to learn more");
        ss.setSpan(clickableSpan, 0, 10, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE); // It will make first 10 letters to clickable
        tv.setText(ss);
        tv.setMovementMethod(LinkMovementMethod.getInstance());
        tv.setText(ss1);

您可能想看一下注意事项,即在执行之前应该拆分字符串资源。