设置黑莓 RichTextField 的文本高亮颜色

Posted

技术标签:

【中文标题】设置黑莓 RichTextField 的文本高亮颜色【英文标题】:Set text highlight colour of Blackberry RichTextField 【发布时间】:2009-08-20 10:27:56 【问题描述】:

有谁知道如何在 Blackberry 的 RichTextField 中设置一段文本的背景颜色?

我已经使用了偏移量、属性和字体数组来更改文本某些部分的外观,但我也想为某一部分的背景添加高亮颜色。

我知道有一个名为 getBackgroundColors 的受保护方法,它返回要使用的颜色数组,我可以覆盖它。但是我已经尝试过这个并且那个方法似乎永远不会在我的代码中被调用,我实际上并不知道 RichTextField 的底层实现是如何以及何时实际使用这个方法的。有什么想法吗?

【问题讨论】:

【参考方案1】:

你可以扩展RichtextField,然后在paint方法中,你可以绘制背景,然后调用super.paint()

【讨论】:

我只想突出显示文本的某个部分,而不是为整个背景涂上一种颜色。您已经可以指定文本区域具有不同的字体,我想对颜色做同样的事情,例如指定字符 10 到 20 应具有红色背景。我认为使用paint方法执行此操作将涉及对所需文本部分当前位置的过多复杂计算。【参考方案2】:

所以基本上,做不到就是答案。

【讨论】:

【参考方案3】:

做不到。

【讨论】:

以上是关于设置黑莓 RichTextField 的文本高亮颜色的主要内容,如果未能解决你的问题,请参考以下文章

清除文本字段黑莓

黑莓中的自定义文本框

仅在黑莓的文本框中更改特定文本的颜色

如何在Blackberry中动态增加horizo ntalfieldmanager高度?

如何在黑莓应用程序文本字段中启用自动大写、标点、文本功能?

在 Magnolia RichTextField 中配置 CKEDITOR 的问题