ListContainer代码获取高度不准的问题有懂的吗?
int listContainerHeight = listContainer.getHeight();
通过这个方法获得的方法,返回的数据和实际数据不一样,
有类似于安卓mContainer.getLayoutParams().height的方法吗?
在原生安卓下mContainer.getHeight()获取的数据也是不准确的。
要用到mContainer.getLayoutParams().height才能获得准确高度。
2022-03-22 13:53:35
浏览
关注
举报
1
删除提问
回答 1
按赞同
/
关注
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);
}
分享