gpt4 book ai didi

android - getheight() px 或 dpi?

转载 作者:塔克拉玛干 更新时间:2023-11-01 21:51:05 24 4
gpt4 key购买 nike

求助,我查到了ListView的高度,不知道是px还是dpi?我需要 dpi

final ListView actualListView = mPullRefreshListView.getRefreshableView();

actualListView.getViewTreeObserver().addOnGlobalLayoutListener(
new ViewTreeObserver.OnGlobalLayoutListener() {
public void onGlobalLayout() {
height = actualListView.getHeight();

}
});

最佳答案

getheight 以像素为单位返回高度,下面是文档所说的..

  public final int getHeight ()

Since: API Level 1

Return the height of your view. Returns

The height of your view, in pixels.

您需要将 px 转换为 dp ,使用以下方法将其转换为 dp。

将像素转换为 dp:

public int pxToDp(int px) {
DisplayMetrics displayMetrics = getContext().getResources().getDisplayMetrics();
int dp = Math.round(px / (displayMetrics.xdpi / DisplayMetrics.DENSITY_DEFAULT));
return dp;
}

或者如果你想在 px 中使用它,请在下面使用。

将 dp 转换为像素:

public int dpToPx(int dp) {
DisplayMetrics displayMetrics = getContext().getResources().getDisplayMetrics();
int px = Math.round(dp * (displayMetrics.xdpi / DisplayMetrics.DENSITY_DEFAULT));
return px;
}

关于android - getheight() px 或 dpi?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11862391/

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