/**
* TextView中添加超链接的四种方式
* 1.autoLink属性
* 2.使用HTML
* 3.将html资源直接定义在string中
* 4.使用SpannableString
*/
public class
MainActivity
extends
AppCompatActivity {
private
String
html
=
"<a href='tel:13455555555'>打电话;</a><a href='smsto:13455555555'>发短信;</a><a href='mailto:13455555555@qq.com'>发邮件;</a><a href='http://www.baidu.com'>百度;</a>"
;
@Override
protected void
onCreate
(Bundle savedInstanceState) {
super
.onCreate(savedInstanceState)
;
setContentView(R.layout.
activity_main
)
;
TextView tv1 = (TextView) findViewById(R.id.
tv1
)
;
TextView tv2 = (TextView) findViewById(R.id.
tv2
)
;
TextView tv3 = (TextView) findViewById(R.id.
tv3
)
;
TextView tv4 = (TextView) findViewById(R.id.
tv4
)
;
tv1.setText(Html.
fromHtml
(
html
))
;
tv1.setMovementMethod(LinkMovementMethod.
getInstance
())
;
//设置各种点击事件
SpannableString spannableString7 =
new
SpannableString(
"打电话,发短信,发邮件,上网"
)
;
spannableString7.setSpan(
new
URLSpan(
"tel:13515135666"
)
,
0
,
3
,
Spanned.
SPAN_EXCLUSIVE_INCLUSIVE
)
;
spannableString7.setSpan(
new
URLSpan(
"smsto:13515135666"
)
,
4
,
7
,
Spanned.
SPAN_EXCLUSIVE_INCLUSIVE
)
;
spannableString7.setSpan(
new
URLSpan(
"mailto:13515135666@qq.com"
)
,
8
,
11
,
Spanned.
SPAN_EXCLUSIVE_INCLUSIVE
)
;
spannableString7.setSpan(
new
URLSpan(
"http://lol.qq.com/"
)
,
12
,
spannableString7.length()
,
Spanned.
SPAN_EXCLUSIVE_INCLUSIVE
)
;
tv2.append(spannableString7)
;
tv2.setMovementMethod(LinkMovementMethod.
getInstance
())
;
tv3.setMovementMethod(LinkMovementMethod.
getInstance
())
;
//给文本设置字体
tv4.setText(
"ExpandableListView组件是android中一个比较常用的组件,"
+
"当点击一个父item的时候可以将它的子item显示出来,"
+
"像手机QQ中的好友列表就是实现的类型效果。"
+
"使用ExpandableListView组件的关键就是设置它的adapter,"
+
"这个adapter必须继承BaseExpandbaleListAdapter类,"
+
"所以实现运用ExpandableListView的核心就是学会继承这个BaseExpanableListAdapter类。"
)
;
Typeface fromAsset = Typeface.
createFromAsset
(getAssets()
,
"mycustom.ttf"
)
;
tv4.setTypeface(fromAsset)
;
}
}