问题描述
我使用图像跨度为按钮设置文本,如下所示:
val callback = object : Drawable.Callback {
override fun unscheduleDrawable(who: Drawable,what: Runnable) {}
override fun invalidateDrawable(who: Drawable) {
button.invalidate()
}
override fun scheduleDrawable(who: Drawable,what: Runnable,`when`: Long) {}
}
drawable.callback = callback
val drawableSpan = ImageSpan(drawable)
val newText = SpannableString(" ").apply {
setSpan(drawableSpan,1,Spanned.SPAN_EXCLUSIVE_EXCLUSIVE)
}
button.text = newText
然后将文本更改为简单字符串:
button.text = "Submit"
将文本更改为简单字符串后,我是否可以假设垃圾收集器会自动清理可绘制对象及其回调对象?在设置简单文本之前,我还应该调用 clearSpans()
吗?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)