ListContainer代码获取高度不准的问题有懂的吗?

int listContainerHeight = listContainer.getHeight();

通过这个方法获得的方法,返回的数据和实际数据不一样,

有类似于安卓mContainer.getLayoutParams().height的方法吗?

在原生安卓下mContainer.getHeight()获取的数据也是不准确的。

要用到mContainer.getLayoutParams().height才能获得准确高度。

鸿蒙
安卓
数据
2022-03-22 13:53:35
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
Florenc
2

需手动计算listcontainer高度,可参考以下代码:

private void setListContainerHeight(ListContainer listContainer){

        if(listContainer == null){

            return;

        }

        BaseItemProvider itemProvider = listContainer.getItemProvider();

        if(itemProvider == null){

            return;

        }

        int totalHeight = 0;

        for (int i = 0; i < itemProvider.getCount(); i++) {

            Component component = itemProvider.getComponent(i, null, listContainer);

            component.estimateSize(0,0);

            totalHeight += component.getEstimatedHeight();

        }

        ComponentContainer.LayoutConfig layoutConfig = listContainer.getLayoutConfig();

        layoutConfig.height = totalHeight;

        listContainer.setLayoutConfig(layoutConfig);

    }
分享
微博
QQ
微信
回复
2022-03-22 15:11:00
相关问题
java代码设置below问题
796浏览 • 1回复 待解决
proxyro用户问题
2381浏览 • 1回复 待解决
并行执行算子问题
1335浏览 • 1回复 待解决
关于逻辑删除问题
298浏览 • 1回复 待解决
Mysql geojson 查询问题
860浏览 • 1回复 待解决
求助动画效果问题
1975浏览 • 1回复 待解决
关于text内容删除问题
393浏览 • 1回复 待解决
MySQL 伪表 dual问题
524浏览 • 1回复 待解决
fegin 和 docker 通信问题
598浏览 • 1回复 待解决
配置文件文档问题
410浏览 • 1回复 待解决
关于索引一个问题
361浏览 • 1回复 待解决
什么是MongoDB?
1056浏览 • 1回复 待解决
Unable to install Toolchains
3509浏览 • 1回复 待解决
redis是什么
554浏览 • 1回复 待解决
Redis事务是什么
380浏览 • 1回复 待解决
ZigBee技术是什么
1782浏览 • 1回复 待解决
状态栏高度怎么获取
6735浏览 • 3回复 待解决