问题标签 [clickablespan]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
62 浏览

android - Android中textview中的可点击字符串

我在 strings.xml 中添加了代码,例如

我也像这样在bhahasa语言中添加了相同的字符串

然后我设置了这样的标签

在这里,我必须为此 2underline 文本执行可点击事件。但是,我尝试使用

但是这个字符串索引对于其他语言环境是错误的。所以目前我已经在文本中添加了 View 到可点击。

所以你能建议这样做吗?谢谢

0 投票
1 回答
113 浏览

java - 字符串上的 ClickableSpan 不是文本

好的,我有一个运行良好的 ClickableSpan(在名为 SpecialTextView 的 TextView 上),它包含一个文本字符串(称为 specialtappedtext)。当另一个TextView(称为BottomTextView)上的另一个ClickableSpan被长按时,它会将单击的单词添加到SpecialTextView,如下所示 -

结果是 SpecialTextView 显示用户点击的任何单词。到目前为止一切都很好,但是我允许用户长按 SpecialTextView 中的一个单词,然后将其删除。我从用户在 SpecialTextView 中点击的内容中得到一个字符串(称为 wordtobedeleted),然后是一个字符串(称为 fullspecialtext),它是出现在 SpecialTextView 中的整行文本。然后我替换出现在 fullspecialtext 中的任何 wordtobedeleted 实例,并将结果显示在 SpecialTextView 中,如下所示 -

因此,如果用户点击 BottomTextView 中显示的“Bandit is in the living room”字样,则 SpecialTextView 将按照点击的顺序显示它们。在 SpecialTextView 中按下这些词中的任何一个都应该删除它们,所以如果我点击“is”、“the”和“living”这些词,SpecialTextView 将显示“Bandit in room”,但我会崩溃。似乎我无法从包含字符串的文本视图中获取子字符串,如果我正在阅读此内容,因为当我注释掉代码时,导致崩溃的部分是我从 SpecialTextView 获取字符串 wordtobedeleted 的地方。

ClickableSpan,对一些冗长的名字感到抱歉,它可以帮助我一目了然地跟踪是什么,因为我正在处理另一个具有几乎相同名称的 ClickableSpan 等 -

不管它是否有帮助,但这是错误日志的内容-

我对编程方面的任何先进技术都是新手,而且我真的不知道如何使用 ClickableSpan,所以我有点想知道它,但直到现在都做得很好!

0 投票
1 回答
61 浏览

android - 使 TextVew 中的单词可点击

我正在开发一个字典应用程序。当我搜索某个关键字时,它会显示其描述。现在我想是否在描述其他关键字时使用了(我的数据库的)任何关键字,我希望该描述关键字是可点击的(并且带有颜色或/和下划线)。因此,如果我单击该单词,将使用单击的关键字进行搜索并显示结果。我正在使用 SQLitedatabase 创建数据库。请看附图。

示例图片: 示例图片

0 投票
1 回答
35 浏览

android - ClickableSpan 和使用光标的更快/更少开销的方法?

我在我的 Android 应用程序的数据库之间提供数据。一个数据库的信息在文本视图中显示为可点击的跨度。在创建新跨度之前,光标会重新排序所有跨度,然后再将它们全部重新附加到文本视图。

此功能有效,但是一旦数据库有大约 50 行或更多行,每次数据在短时间内发生变化时迭代游标就会明显变慢。

有没有办法实现一种方法,只需要查看新行即可将其添加到适当的位置,而不是每次创建新跨度时都遍历游标中的每一行?同样,有没有办法删除跨度而不必重新加载整个文本视图?

为由 clickableSpans 组成的 textview 准备数据的代码:

(注意:dbHelper.fetchAllTT3Values() 函数按整数列对数据进行排序,因此这会重新排列下面函数中附加的内容。)

带有数据标记的可点击跨度的代码:

0 投票
1 回答
102 浏览

android - 单击后如何设置 ClickableSpan 的颜色并保持颜色直到在其他地方单击?

这是一个关于如何在文本视图中单击一个单词的链接。我想让选中的单词将背景颜色更改为灰色并保持灰色,直到用户单击其他位置。但是,我已经扩展LinkMovementMethodtextview,但是当我单击其他位置时,这种方式无法将背景颜色反转为透明。

这是我尝试失败的示例。 在此处输入图像描述

换言之,最多突出显示一个单词。如何做到这一点?

0 投票
1 回答
1339 浏览

android - 触摸时加粗的 ClickableSpan

我有一个 TextView,其中每个单词都是 ClickableSpan(实际上是 ClickableSpan 的自定义子类)。当一个单词被触摸时,它应该以粗体显示。如果我在 TextView 上设置 textIsSelectable(false),它就可以正常工作。这个词立即加粗。但是如果文本是可选择的,那么它就不起作用。但是 - 如果我触摸一个单词,然后关闭屏幕并重新打开,当屏幕显示重新打开时,该单词会加粗。我已经尝试了所有我能想到的强制重绘(使 TextView 无效、强制调用 Activity 的 onRestart()、TextView 上的 refreshDrawableState() 等)。我错过了什么?

这是我的 ClickableSpan 子类:

这是我的 Activity 中的 WordSpan 实例化代码:

这是我的自定义运动方法:

0 投票
0 回答
259 浏览

android - 当用户单击其中的 ClickableSpan 时,如何阻止 CheckBox Pressed 状态?

我需要一个CheckBox包含一个集成的可点击区域以在应用程序中调出另一个屏幕。这个解决方案非常有效:

...除了我遇到了与此评论中提到的相同的问题。当用户点击ClickableSpan时,点击被 span 注册和处理,CheckBox同时也短暂地进入按下状态。该框的CheckBox行为就像用户单击它一样,尽管它不会切换实际的选中状态。

您可以在此 GIF 中看到效果 - 观看CheckBox左侧的实际框:

复选框动画

当用户单击其余部分时,我仍然想要那种按下状态CheckBox,所以我不想尝试更改背景或其他东西来消除按下状态。有没有办法ClickableSpan说“请不要转换到检查状态”?

0 投票
1 回答
171 浏览

android - NativeScript - 不支持可点击跨度

即使Clickable Span{N} 不支持,但有什么解决方法吗?

我已经阅读了以下线程,但仍然不知道如何在 NativeScript-Vue 上实现,请问有人可以帮忙吗?

功能要求:iOS 和 Android 的 ClickableSpan 支持

0 投票
1 回答
68 浏览

java - SpannableString 和 ClickableSpan 的问题

我写了这段代码:

}

但是……什么都没有改变。我的意思是,代码构建正确,应用程序没有崩溃,TextView 实际上在“单击此处!”中发生了变化,但它不可点击并且它的外观没有改变......为什么?

0 投票
0 回答
41 浏览

android - Android SpannableString 点击监听器不起作用

文本看起来可点击,但 onCLickListener 未检测到任何点击。不确定是什么问题?