android–View.setVisibility(View.VISIBLE)是否强制视图重绘,即使它已经可见?

android–View.setVisibility(View.VISIBLE)是否强制视图重绘,即使它已经可见?,第1张

概述我正在试图找出我的自定义视图的优化.我想知道调用View.setVisibility(View.VISIBLE)是否强制Android框架更新视图可见性(<-强制视图重绘),即使视图已经可见.解决方法:No,itdoesn’t.看看setVisibility():publicvoidsetVisibility(intvisibility){setFlags(visibil

我正在试图找出我的自定义视图的优化.我想知道调用VIEw.setVisibility(VIEw.VISIBLE)是否强制Android框架更新视图可见性(< - 强制视图重绘),即使视图已经可见.

解决方法:

No, it doesn’t.

看看setVisibility():

public voID setVisibility(int visibility) {    setFlags(visibility, VISIBIliTY_MASK);    if (mBGDrawable != null) mBGDrawable.setVisible(visibility == VISIBLE, false);}

它只是调用setFlags(),如果没有任何改变,它会立即返回:

....int changed = mVIEwFlags ^ old;if (changed == 0) {    return;}

即使它(某种程度上)已经过去了,它也会检查各个标志是否发生变化,只有在其中一个标志不同时才会更新.

总结

以上是内存溢出为你收集整理的android – View.setVisibility(View.VISIBLE)是否强制视图重绘,即使它已经可见?全部内容,希望文章能够帮你解决android – View.setVisibility(View.VISIBLE)是否强制视图重绘,即使它已经可见?所遇到的程序开发问题。

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

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

原文地址: http://outofmemory.cn/web/1116068.html

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

发表评论

登录后才能评论

评论列表(0条)

保存