HarmonyOS 是否有方法可以在组件展示前获取到即将展示的组件的宽高?

针对展示历史搜索项这一功能,当前希望实现如下场景:

提前计算将要展示的每个历史搜索记录的宽度。

如果宽度计算后少于2行,将展示2行所有的历史搜索记录项。

如果宽度计算后多余2行,将只展示2行历史搜索记录项,并展示"更多"按钮。

HarmonyOS
2024-09-03 10:49:41
浏览
收藏 0
回答 1
回答 1
按赞同
/
按时间
zxjiu

获取组件的宽度、高度用如下方法:

import { Logger } from '../../commen.util/Logger'; 
 
@Entry 
@Component 
struct WithAndHeight{ 
  @State widthLeft:number = 0; 
  build() { 
    Column(){ 
      Column(){ 
        Text('获取宽度高度') 
        Text('获取宽度高度') 
        Text('获取宽度高度') 
        Text('获取宽度高度') 
        Text('获取宽度高度') 
        Text('获取宽度高度') 
        Text('获取宽度高度') 
        Text('获取宽度高度') 
      } 
      .onAreaChange((oldValue: Area, newValue: Area) => { 
        let info = JSON.stringify(newValue.width) 
        let info1 = JSON.stringify(newValue.height) 
        Logger.info("获取宽度:"+info) 
        Logger.info("获取高度:"+info1) 
 
      }) 
    } 
  } 
}
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.
  • 23.
  • 24.
  • 25.
  • 26.
  • 27.
  • 28.
分享
微博
QQ
微信
回复
2024-09-03 15:44:00
相关问题
ArkTs如何获取组件
5450浏览 • 1回复 待解决
HarmonyOS 如何获取组件大小,
1065浏览 • 1回复 待解决
页面加载获取网络图片
1240浏览 • 1回复 待解决
HarmonyOS如何获取指定子组件
1815浏览 • 1回复 待解决
如何获取组件,你学会了吗?
3253浏览 • 1回复 待解决
HarmonyOS 横屏状态下获取组件
1190浏览 • 1回复 待解决
如何获取组件和在屏幕上位置
4136浏览 • 2回复 待解决
求大佬告知如何获取组件
878浏览 • 1回复 待解决
HarmonyOS 是否有方法可以清除缓存
1085浏览 • 1回复 待解决
HarmonyOS 怎么Page中获取窗口
498浏览 • 1回复 待解决
HarmonyOS 获取图片
623浏览 • 1回复 待解决