ちなみに今回はJavaで指定する方法です。
httpから始まる文字列にリンクをつけたい場合は、TextView.setAutoLinkMaskにLinkify.WEB_URLSを設定する。
TextView textView = new TextView(context); textView.setAutoLinkMask(Linkify.WEB_URLS);
メールアドレスにリンクをつけたい場合は、TextView.setAutoLinkMaskにLinkify.EMAIL_ADDRESSESを設定する。
TextView textView = new TextView(context); textView.setAutoLinkMask(Linkify.EMAIL_ADDRESSES);
URLにもメールアドレスにもリンクをつけたい場合は、TextView.setAutoLinkMaskにLinkify.EMAIL_ADDRESSESとLinkify.EMAIL_ADDRESSESを「|」でつなげて設定する。
TextView textView = new TextView(context); textView.setAutoLinkMask(Linkify.WEB_URLS | Linkify.EMAIL_ADDRESSES);
これだけ。
簡単ですね。
他には電話番号とか、全部指定とかもある。
あと気になったのは、TextViewにはappendメソッドがあるが、こちらでリンク対象文字列をセットするとリンクされない・・・。
TextView textView = new TextView(context); textView.setAutoLinkMask(Linkify.WEB_URLS); textView.setText("http://www.yahoo.co.jp/"); textView.append("http://www.google.co.jp/");これだとyahoo.co.jpはリンクされるけどgoogleにはリンクがつかない・・・。はて・・・。
まぁ、StringBuilderで表示したい文字列を全部くっつけてからsetText()を呼べば問題ないから良いか・・・。
おわり
0 件のコメント:
コメントを投稿