相关问题
ArkTs如何获取组件的宽高?
6208浏览 • 1回复 待解决
java如何获取屏幕宽高。找不到api?
6700浏览 • 1回复 待解决
屏幕宽高如何获取 ,求解决方法
2772浏览 • 1回复 待解决
如何获取屏幕宽高,你知道吗?
3813浏览 • 1回复 待解决
HarmonyOS 是否有ndk接口获取屏幕的宽高
1125浏览 • 1回复 待解决
HarmonyOS 如何获取组件的大小,宽高?
1650浏览 • 1回复 待解决
鸿蒙harmony如何获取屏幕宽高,如何获取信号栏高度?
12728浏览 • 2回复 待解决
【Harmony OS】【ArkUI】ets开发 如何获取到屏幕宽高?
10940浏览 • 2回复 待解决
怎么获取组件的宽高(组件宽高是自适应的,没有固定大小)?
3967浏览 • 1回复 待解决
HarmonyOS 如何获取空间的宽高以及在屏幕中的坐标
1179浏览 • 1回复 待解决
HarmonyOS如何获取指定子组件的宽高
3164浏览 • 1回复 待解决
如何获取组件的宽高,你学会了吗?
3914浏览 • 1回复 待解决
求大佬告知如何获取组件宽高
1312浏览 • 1回复 待解决
HarmonyOS 如何在自定义@Component中获取屏幕的宽高?
2473浏览 • 1回复 待解决
如何获取窗口的宽高信息
3446浏览 • 1回复 待解决
HarmonyOS 如何获取Webview的宽高
913浏览 • 1回复 待解决
获取Column最终的宽高
1396浏览 • 1回复 待解决
HarmonyOS 是否存在方法获取某个组件的宽高
1040浏览 • 1回复 待解决
如何测量获取控件高宽
1636浏览 • 1回复 待解决
HarmonyOS 如何获取屏幕宽高并设置为全局供所有页面调用?
1635浏览 • 1回复 待解决
HarmonyOS 获取图片的宽高
1387浏览 • 1回复 待解决
鸿蒙如何获取Element图片的宽高
8975浏览 • 1回复 待解决
HarmonyOS RN中使用Dimensions API 获取屏幕宽高不正确
1283浏览 • 1回复 待解决
HarmonyOS 横屏状态下获取组件的宽高
1679浏览 • 1回复 待解决
怎么在页面绘制完成后获取某个view的宽高和位置?
1246浏览 • 1回复 待解决





















方法一:可以通过getInspectorByKey获取指定id组件的所有属性,getInspectorByKey的返回结果是组件属性列表的JSON字符串,解析字符串后获取其rect属性,rect属性是一个长度为2的数组,数组的第一个值是组件左上角的坐标,第二个值是组件右下角的坐标,因此我们也可以获取组件的中心坐标和组件的长宽。例如:"$rect":"[648.00, 262.00][696.00,360.00]" ,它代表组件左上角到屏幕左边的距离为648px,到屏幕顶部的距离为262px,组件的宽可以通过 696-648 = 48px得出。
具体可以参考如下代码:
方法二:在组件尺寸发生变化时,需要使用onAreaChange可以响应由布局变化所导致的组件大小、位置发生变化时的回调,其中newValue返回目标元素变化之后的宽高以及目标元素相对父元素和页面左上角的坐标位置。
参考链接
获取指定id的组件的所有属性、组件区域变化事件
你可以通过调用getInspectorByKey来获取某个id组件的所有属性。这个方法会返回一个JSON字符串,里面就是组件的属性列表。把这个字符串解析一下,就能拿到组件的rect属性。这个rect属性是一个有两个元素的数组,第一个元素是组件左上角的坐标,第二个元素是组件右下角的坐标。所以,我们可以根据这个数组计算出组件的中心坐标和长宽。比如,"$rect":"[648.00,262.00][696.00,360.00]",这个表示组件左上角到屏幕左边的距离是648px,到屏幕顶部的距离是262px,组件的宽度是696-648=48px。