要启用Linkify
行为,请在代码中执行此操作:
textView.setMovementMethod(LinkMovementMethod.getInstance());
有没有办法在xml
的布局textview
中设置此内容?
答案 0 :(得分:5)
不,没有。如果您在应用中要避免使用setMovementMethod(LinkMovementMethod.getInstance());
的许多位置,则应考虑创建并使用扩展TextView
的自定义类来执行该方法。
答案 1 :(得分:2)
使用XML布局中的“autoLink”属性
答案 2 :(得分:0)
在 kotlin 中你可以创建这样的扩展函数
@SuppressLint("SetTextI18n")
fun TextView.makeHyperLink(url: String) {
text = if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) {
Html.fromHtml("<a href='${url}'>${text}</a>", Html.FROM_HTML_MODE_COMPACT)
} else {
Html.fromHtml("<a href='${url}'>${text}</a>")
}
movementMethod = LinkMovementMethod.getInstance()
isClickable = true
}