HarmonyOS 鸿蒙Next 是否有可以拖动的组件

HarmonyOS 鸿蒙Next 是否有可以拖动的组件

我想问下是否有像自定义CustomDialog那样从底部弹出的Dialog,并且可以按住内部某个组件可以拖动拉伸该dialog直至全屏展示的组件

2 回复
[@Entry](/user/Entry)
[@Component](/user/Component)
struct SheetTransitionExample {
[@State](/user/State) isShow: boolean = false

[@Builder](/user/Builder)
myBuilder() {
Column() {
Button("content1")
.margin(10)
.fontSize(20)

Button("content2")
.margin(10)
.fontSize(20)
}
.width('100%')
}

build() {
Column() {
Button("transition modal 1")
.onClick(() => {
this.isShow = true
})
.fontSize(20)
.margin(10)
.bindSheet($$this.isShow, this.myBuilder(), {
detents: [SheetSize.MEDIUM, SheetSize.LARGE, 200],
backgroundColor: Color.Gray,
blurStyle: BlurStyle.Thick,
showClose: true,
title: { title: "title", subtitle: "subtitle" },
})
}
.justifyContent(FlexAlign.Start)
.width('100%')
.height('100%')
}
}

参考如下链接:
https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/ts-universal-attributes-sheet-transition-V5#示例2

更多关于HarmonyOS 鸿蒙Next 是否有可以拖动的组件的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


HarmonyOS 鸿蒙Next 有可以拖动的组件

在HarmonyOS鸿蒙Next中,部分组件已经实现了默认的拖拽能力。从API Version 10开始,ArkUI框架就支持为部分组件设置draggable属性为true,从而使其具备拖拽功能。这主要针对的是组件间的数据拖拽,允许用户通过鼠标或手势触屏的方式,从一个组件位置拖出数据,并拖入到另一个组件位置上进行响应。

此外,虽然UIAbility本身并不直接支持子窗口的拖动交互,但开发者可以通过实现自定义的拖动逻辑来实现窗口或视图的拖动功能。这通常涉及重写相关方法来处理拖动事件,如onTouch方法,并在该方法中检测触摸事件类型,计算新的窗口位置,然后调用相应方法移动窗口。

如果开发者在实现拖动功能时遇到问题,可以查阅HarmonyOS的官方文档或开发指南,以获取更详细的指导和示例代码。如果问题依旧没法解决请联系官网客服,官网地址是:https://www.itying.com/category-93-b0.html

回到顶部
AI 助手
你好,我是IT营的 AI 助手
您可以尝试点击下方的快捷入口开启体验!