android– 你多久可以更新一次textview而不会搞乱

android– 你多久可以更新一次textview而不会搞乱,第1张

概述假设一个textviewTextViewtvSum=findViewById(R.id.sumTexviewId);如果我想更改显示的文本,我这样做:tvSum.setText("£0.00");现在,假设我经常这样做,每次按下按钮时都说,也许显示在一个按钮上输入的总和.在这个例子中,你按一个,它说“1p”,然后按两个,它说“12p”,依此

假设一个textvIEw

TextVIEw tvSum = findVIEwByID(R.ID.sumTexvIEwID);

如果我想更改显示的文本,我这样做:

tvSum.setText("£0.00");

现在,假设我经常这样做,每次按下按钮时都说,也许显示在一个按钮上输入的总和.在这个例子中,你按一个,它说“1p”,然后按两个,它说“12p”,依此类推.

我发现如果我这样做,文本会在一段时间后变形.对于序列12345,从一切开始是好的:

>(没有压力)
>(按下“1”)
>(然后按下“2”)
>(然后按下“3”)

然而,事情变得混乱之后:

>(然后按下“4”)
>(然后按下“5”)

之后它永远不会变得更好.我没有发布代码,因为代码真的很简单:一堆按钮,只写一个短字符串到一个textvIEw – 代码中的任何内容都不应该导致这个,诚实. (是的,我已经通过将其写在Toast上来检查正在编写的字符串是否正确.)是否有其他人遇到过这个问题,如果有的话解决了什么?

解决方法:

事实证明,Mr.Me正朝着正确的方向前进,这与文本更改后渲染背景的方式有关.我已经(有意)设置了按钮,在黄色轮廓内部有一个透明背景(而不是未指定),使用颜色0x00000000.

出于某种原因,当应用非完全不透明的填充时,新的背景将放在先前的内容上(我认为是大约3个位图的循环),而不是定义内容.我想这可能是由于Canvas使用的默认PorterDuff传输模式.

我在解决这个问题时想出了解决方案:

>不指定背景.这也是透明的,但出于某种原因积极如此.
>有任何完整的Alpha背景. (下行:如果你想要一些透明度,则不起作用)
>在调用super.onDraw()之前,编写一个覆盖onDraw的自定义视图,以主动填充画布0x00. (缺点:这摆脱了这个观点中的任何背景,但保留了这个观点背后的观点.

为“不做任何花哨的”声明道歉 – 我没有意识到积极地将背景设置为透明计算为幻想!

总结

以上是内存溢出为你收集整理的android – 你多久可以更新一次textview而不会搞乱全部内容,希望文章能够帮你解决android – 你多久可以更新一次textview而不会搞乱所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/web/1097394.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-28
下一篇 2022-05-28

发表评论

登录后才能评论

评论列表(0条)

保存