gpt4 book ai didi

Android:查找ListView的项目渲染高度

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:17:16 25 4
gpt4 key购买 nike

有没有什么方法可以找到当前显示在列表中的 ListView 项目的高度,而无需自己在布局 xml 文件中进行设置?

我试过了

View listItem = listAdapter.getView(currentIndex, null, listView);
listItem.measure(MeasureSpec.EXACTLY, MeasureSpec.UNSPECIFIED);
int itemHeight = listItem.getMeasuredHeight();

虽然它最初工作正常,但它决定在启动新的模拟器 session 后的 measure() 调用期间抛出空指针异常。

我正在尝试做的是让一个短列表中的项目(只有 2 或 3 个完整的项目可见)在程序选择时居中。

最佳答案

这对我有用:

public static int getItemViewHeight(Context context, Adapter adapter, int index) {
FrameLayout fakeParent = new FrameLayout(context);
View view = adapter.getView(index, null, fakeParent);
view.measure(View.MeasureSpec.UNSPECIFIED, View.MeasureSpec.UNSPECIFIED);
return view.getMeasuredHeight();
}

关于Android:查找ListView的项目渲染高度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7933823/

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