Android TextViewがリンク付き文字イベントの傍受を実現する3つの一般的な方法の例
4208 ワード
この例では、Android TextViewがリンク付き文字イベントの傍受を実現する3つの一般的な方法について説明します.皆さんの参考にしてください.具体的には以下の通りです.
レイアウトファイル
このうち、android:autoLinkプロパティの選択項目は、none(リンク効果なし)、web(Webリンク)、email(メール送信)、phone(電話)、map(位置決め)、all(デフォルトはすべて自動リンク)です.
Androidに関する詳細に興味のある方は、「Android開発入門と進級チュートリアル」、「Androidデバッグテクニックとよくある問題解決方法の概要」、「Android基本コンポーネントの使い方のまとめ」、「AndroidビューViewテクニックのまとめ」、「Androidレイアウトlayoutテクニックのまとめ」、「Androidコントロールの使い方のまとめ」を参照してください.
この文書がAndroidプログラムの設計に役立つことを願っています.
/**
* TextView
* @description:
* @author ldm
* @date 2016-4-21 4:34:05
*/
public class TextViewLinkAct extends Activity {
private TextView tv_3;
private TextView tv_4;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.link);
setTextViewLink();
}
/**
* TextView
*
* @description:
* @author ldm
* @date 2016-4-21 4:24:13
*/
private void setTextViewLink() {
// Html href
tv_3 = (TextView) findViewById(R.id.text3);
tv_3.setText(Html
.fromHtml("text3: Constructed from HTML programmatically. Text with a "
+ "link "
+ "created in the Java source code using HTML."));
tv_3.setMovementMethod(LinkMovementMethod.getInstance());
// SpannableString setMovementMethod
SpannableString ss = new SpannableString(
"text4: Manually created spans. Click here to dial the phone.");
ss.setSpan(new StyleSpan(Typeface.BOLD), 0, 30,
Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
ss.setSpan(new URLSpan("tel:4155551212"), 31 + 6, 31 + 10,
Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
tv_4 = (TextView) findViewById(R.id.text4);
tv_4.setText(ss);
tv_4.setMovementMethod(LinkMovementMethod.getInstance());
}
}
レイアウトファイル
このうち、android:autoLinkプロパティの選択項目は、none(リンク効果なし)、web(Webリンク)、email(メール送信)、phone(電話)、map(位置決め)、all(デフォルトはすべて自動リンク)です.
Androidに関する詳細に興味のある方は、「Android開発入門と進級チュートリアル」、「Androidデバッグテクニックとよくある問題解決方法の概要」、「Android基本コンポーネントの使い方のまとめ」、「AndroidビューViewテクニックのまとめ」、「Androidレイアウトlayoutテクニックのまとめ」、「Androidコントロールの使い方のまとめ」を参照してください.
この文書がAndroidプログラムの設計に役立つことを願っています.