gpt4 book ai didi

android - TranslateAnimation的数值参数是dp还是px?

转载 作者:行者123 更新时间:2023-11-29 02:18:45 24 4
gpt4 key购买 nike

我正在通读 the documentation of TranslateAnimation我看到这是 TranslateAnimation 类的众多构造函数之一:

public TranslateAnimation (float fromXDelta, 
float toXDelta,
float fromYDelta,
float toYDelta)

进一步阅读每个参数表示的内容,我看到 fromXDelta 表示:

Change in X coordinate to apply at the start of the animation

[...其他参数依此类推。]


问题:

我明白这些参数的含义,但我不知道如何表示它们。衡量标准和引用点是什么?它们的单位是 dp 还是像素?

最佳答案

Like @Mike M. said, most dimensions on the code side are in Pixel.

但是,这不是障碍,因为您仍然可以轻松地在 dp 和 px 之间来回转换。您可以使用以下两个函数来实现此目的:


dp 到 px:

public float convertDpToPixel(float dp, Context context) {
return dp * ((float) context.getResources().getDisplayMetrics().densityDpi / DisplayMetrics.DENSITY_DEFAULT);
}


px 到 dp

public float convertPixelsToDp(float px, Context context) {
return px / ((float) context.getResources().getDisplayMetrics().densityDpi / DisplayMetrics.DENSITY_DEFAULT);
}


附言:

如果您需要在 int 而不是 float 中返回 dp 值,您可以在 Math.round() 中传递该值。

我希望这对那里的人有所帮助。编码愉快!

关于android - TranslateAnimation的数值参数是dp还是px?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57826050/

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