gpt4 book ai didi

android - setX, setTranslationX, setLeft, LayoutParam.leftMargin, Matrix..有什么区别

转载 作者:塔克拉玛干 更新时间:2023-11-02 19:00:05 27 4
gpt4 key购买 nike

另一个关于设置 View 位置的问题。如果您想四处移动 View ,则可以执行 setXsetTranslationXsetLeftLayoutParam.leftMargin当然还有覆盖 onDraw 方法并使用 Matrix/Bitmap/Canvas 操作。

我想知道有什么区别。他们最终是否都调整了相同的值,即 View 的 x 坐标?最好将所有内容都放在一篇文章中,以供将来的读者使用

据我所知,

  • LayoutParam.LeftMargin:适用于所有API(具体在Api下8)
  • SetTranslation: View 的原始左边界与新左边界之间的差异。虽然我听说它可能不持久?

任何人都可以阐明差异以及它们是否影响不同的属性或相同的属性?

最佳答案

我认为 setLeft 和 setX() 之间的主要区别在于 setLeft() 是相对于其父 View 的,其中 setX()只是设置相对于整个屏幕的位置,与setTranslationX()相同。

setLeft() 术语中,这意味着布局系统可以更改其布局位置。例如,如果我们在滚动 RecyclerView 时使用 setLeft,系统会相应地改变它的位置,因此在这种情况下正确的用法是 setX()

关于android - setX, setTranslationX, setLeft, LayoutParam.leftMargin, Matrix..有什么区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28903623/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com