我正在从网络应用程序向包含一些手机号码的Android手机发送消息,但该手机号码无法点击从那里设置来电。
答案 0 :(得分:1)
怎么样?
如果你可以使用TextView,
有两种自动链接方式
1)在JavaCode中链接
离>
public class LinkifyActivity extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
TextView txtPhone1 = (TextView)findViewById(R.id.txtPhone1);
Linkify.addLinks(txtPhone1, Linkify.PHONE_NUMBERS);
TextView txtPhone2 = (TextView)findViewById(R.id.txtPhone2);
Linkify.addLinks(txtPhone2, Linkify.PHONE_NUMBERS);
TextView txtWeb = (TextView)findViewById(R.id.txtWeb);
Linkify.addLinks(txtWeb, Linkify.WEB_URLS);
}
}
all => Linkify.ALL
电子邮件=> Linkify.EMAIL_ADDRESSES
地址=> Linkify.MAP_ADDRESSES
网址=> Linkify.WEB_URLS
phonenumber => Linkify.PHONE_NUMBERS 强>
2)xml中的AutoLink
离>
<TextView
android:id="@+id/txtAutoWeb"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:autoLink="phone"
android:text="01012341234" />
这个数字不包含 - (连字符),它没关系。
答案 1 :(得分:0)
您可以使用SpannableString
和/或SpannableStringBuilder
这是关于它的a question
和is Docs关于它
因此您可能需要使用特殊分隔符发送消息
然后将其添加到包含在SpannableString中的textView
例如,data bla bla#SEP#+963xxxxxxx#SP#data2 bla bla
所以你得到这个String并将其拆分,并应用SpannableString
String msg = getMsgFromServer();
String msgParts[] = msg .split("#SEP#");
检查上面的qustion以完成,它在每个可兼容的项目上处理onClick
。