【问题标题】:Android LinkMovementMethod in XML?XML中的Android LinkMovementMethod?
【发布时间】:2010-08-09 01:59:45
【问题描述】:

要启用Linkify 行为,我在代码中执行此操作:

textView.setMovementMethod(LinkMovementMethod.getInstance());

有没有办法在布局xml 中为textview 设置这个?

【问题讨论】:

    标签: android linkify


    【解决方案1】:

    不,没有。如果您在应用程序中的很多地方都使用了setMovementMethod(LinkMovementMethod.getInstance());,而您想避免它,您应该考虑创建并使用一个自定义类来扩展TextView 来执行该方法。

    【讨论】:

      【解决方案2】:

      在 XML 布局中使用“autoLink”属性

      【讨论】:

        【解决方案3】:

        在 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
        }
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2016-11-03
          • 2013-02-27
          • 1970-01-01
          • 1970-01-01
          • 2013-01-12
          • 2018-03-10
          • 1970-01-01
          • 2013-01-25
          相关资源
          最近更新 更多