#鸿蒙通关秘籍#鸿蒙栅格布局中的点击事件如何实现

HarmonyOS
1天前
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
ADSL古道西风

在鸿蒙应用开发中,grid-container组件可以通过点击事件来查询栅格布局的详细信息。以下示例展示了如何为grid-container注册点击和长按事件:

html <!-- index.hml --> <div class="container"> <grid-container id="mygrid" gutter="20px" style="background-color: pink;padding-top: 100px;" onclick="getColumns" onlongpress="getSizeType"> <grid-row style="height:100px;justify-content:space-around;background-color: #4cedf3;width: 20%;margin-left: 40%;"></grid-row> <grid-row style="height:150px;justify-content:space-around;background-color: #4cbff3;width: 50%;margin-left: 25%;"></grid-row> <grid-row style="height:200px;justify-content:space-around;background-color: #465ff6;width: 80%;margin-left: 10%;"></grid-row> <grid-row style="height:200px;justify-content:space-around;background-color: #5011ec;width: 100%;"></grid-row> </grid-container> </div>

javascript // index.js import promptAction from '@ohos.promptAction'; export default { data:{ gutterWidth:'', columnWidth:'', columns:'', }, getColumns(){ this.$element('mygrid').getColumnWidth((result)=>{ this.columnWidth = result; }) this.$element('mygrid').getGutterWidth((result)=>{ this.gutterWidth = result; }) this.$element('mygrid').getColumns((result)=>{ this.columns= result; }) setTimeout(()=>{
promptAction.showToast({duration:5000,message:'columnWidth:'+this.columnWidth+',gutterWidth:'+ this.gutterWidth+',getColumns:'+this.columns}) }) }, getSizeType(){ this.$element('mygrid').getSizeType((result)=>{ promptAction.showToast({duration:2000,message:'get size type:'+result}) }) }, }

点击时调用getColumns方法,通过promptAction显示列数、列宽和gutter宽度的信息;长按时调用getSizeType方法获取当前尺寸类型。

分享
微博
QQ
微信
回复
1天前
相关问题