问题描述
我正在使用SpannableString
制作文本编辑器,其中包含lineHeight
或baselineshift
之类的属性。为此,我使用StyleSpan
和LineHeightSpan
。
问题在于,高亮显示选项或文本光标与文本之间似乎有所偏移。因此,它给了我一些奇怪的行为,如下所示:
更烦人的是,我必须点击/选择突出显示区域,以选择/编辑相应的文本。
如何避免这种转变?看来布局没有使用textPaint
并牢记原始文本。
谢谢您的帮助,祝您愉快!
编辑:信息
问题似乎出在我对marginBottom
的实现上。为此,我使用LineHeightSpan
如下:
class LineHeightFactorSpan(
private val marginBottom: Int
) : LineHeightSpan {
override fun chooseHeight(
text: CharSequence?,start: Int,end: Int,spanstartv: Int,lineHeight: Int,fm: FontMetricsInt?
) {
fm?.let {
it.descent = it.descent + marginBottom
it.bottom = it.descent + marginBottom
}
}
}
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)