我正在阅读the documentation of TranslateAnimation,发现这是TranslateAnimation类的众多构造函数之一:
public TranslateAnimation (float fromXDelta,
float toXDelta,
float fromYDelta,
float toYDelta)
进一步阅读每个参数的含义后,我发现fromXDelta
的含义是:
更改X坐标以在动画开始时应用
[ ...等等其他参数。]
问题:
我了解这些参数的含义,但我不知道如何表示它们。什么是度量标准和参考点?它们是指dp还是像素?
答案 0 :(得分:0)
就像@Mike M.所说,代码侧的大多数尺寸都在 像素。
但是,这并不是障碍,因为您仍然可以轻松地从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);
}
PS:
如果您需要在int
中而不是float
中返回dp值,则可以在Math.round()
内部传递该值。
我希望这可以帮助某个人。快活的编码!