【问题标题】:Highlight Android TextView clickableSpan on finger down?手指向下突出显示Android TextView clickableSpan?
【发布时间】:2013-06-05 08:41:45
【问题描述】:

stackoverflow 上有类似的问题,但他们回答的是“如何突出显示 onclick”而不是 ontouch

有没有办法(例如)设置 clickablespan ontouch 的背景颜色?

【问题讨论】:

  • 捕获触摸事件坐标。根据您的布局定义范围行为。注意:捕获触摸事件可能会占用大量 CPU!如果您真的希望在您的应用中实现这种实现,请确定。
  • @KunalS.Kushwah,您可以将此作为答案发布..
  • 好的!其实我用的是LG-P970。它有一个预建的软件,可以显示屏幕截图(可能由 LG 自己开发)。我也在考虑实施它。 :)

标签: android textview


【解决方案1】:

您可以通过跟随设备上的触摸模式来实现这一点--- 捕获触摸事件坐标。根据您的布局定义范围行为。注意:捕获触摸事件可能会占用大量 CPU!如果您真的希望在您的应用中实现这种实现,请确定。

【讨论】:

  • 我需要使用它来获得良好的用户操作响应。我想在 twitter 应用程序中执行此操作,当您点击主题标签或用户名时,您会在其中看到突出显示。就没有办法解决吗?
  • 从我在这种情况下得到的信息来看——1. cpu 压力太大,2. 如果目的是在视觉上通知用户有关标签的信息,可以有更简单的您可以直接在布局中执行的操作。为什么要费心捕捉动作响应?此外,“highlight”的东西更适合网站类型的视图,但不适用于像 android app 这样的面向动作的环境。
  • 例如,您喜欢 Google Play 市场在您触摸市场第一页上的一个按钮时所做的方式,对吧?我想要类似的感觉。
  • 这不是 Google Play 中的触摸事件捕获。这是一个点击事件捕获!如果您需要在单击时“突出显示”按钮,那么这里有一个链接供您使用——stackoverflow.com/questions/7803430/…
  • 如果它有助于解决您的问题,我想标记答案不会有任何伤害! :)
【解决方案2】:

对于突出显示,您不能更改 ClickableSpan 的背景,但您可以更改文本颜色和样式以使粗体或斜体突出显示。

<string name = "descMsg">Tap &lt;FONT COLOR=\"#E22882\">"&lt;i>here&lt;/i>&lt;/FONT> to launch the app.</string>

您可以在带有 HTML 标记的 string.xml 中使用它。

希望这会对你有所帮助..:)

【讨论】:

  • 如何在 ClickableSpan 的“新闻”上做到这一点?
  • 点击文字变色请关注this link
  • 我需要 onPress ,它应该只在手指在那个跨度上时改变颜色(而不是在松开手指之后)
  • @frankish - 你能解决这个问题吗?我处于类似情况并尝试在用户将文本聚焦在可扩展字符串中时更改颜色。到目前为止,我发现,我能做到的唯一方法是为此使用单独的文本视图并设置状态属性。但我想在 Spannable 上做。
  • @aNoviceGuy 我放弃了;我使用 ClickableSpan 并为其着色,但我没有更改与 onTouch/onClick/Highlight 等相关的任何内容。
猜你喜欢
  • 2011-10-14
  • 2011-12-14
  • 1970-01-01
  • 2012-06-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-02-08
相关资源
最近更新 更多