【androidjava】電話番号をリンクとして表示する

ビューで定義したメールアドレスや電場番号をリンク化して使いたい場面は

多々あると思います。自分の場合は電話番号のみだったので、以下の文だけで

作ることが出来ました。

二番目の引数にPatterns.PHONEを入れるのが肝で、これを忘れると

リンク化されません。

普通のsetTextではなく、setMovementMethodを使うことでリンク化した

文字を実装できるようになります。。


TextView tel_text = (TextView) activity.findViewById(R.id.tel);
Linkify.addLinks(tel_text, Patterns.PHONE,"tel:",Linkify.sPhoneNumberMatchFilter,Linkify.sPhoneNumberTransformFilter);
tel_text.setMovementMethod(LinkMovementMethod.getInstance());

↑の大元はこちら。https://stackoverflow.com/questions/40788608/androidautolink-for-phone-numbers-doesnt-always-work

 

また、一般的なリンク化の方法としては以下がポピュラーですが、

自分のアプリでは動きませんでした。


TextView text_tel = new TextView(this);

//電話番号は適当です。
text_tel.setText("0xx-0xxx-0xxx");
Linkify.addLinks( text_tel, Linkify.PHONE_NUMBERS);

ちなみにこれのurlとメールアドレスのリンクは動くことが確認できました。

メールアドレスだけは一番上の方法で変換するのが無難ですね。

>株式会社シーポイントラボ

株式会社シーポイントラボ

TEL:053-543-9889
営業時間:9:00~18:00(月〜金)
住所:〒432-8003
   静岡県浜松市中央区和地山3-1-7
   浜松イノベーションキューブ 315
※ご来社の際はインターホンで「316」をお呼びください

CTR IMG