请教一下,listcontainer怎么设置item的滑动事件?是哪个方法?
请教一下,listcontainer怎么设置item的滑动事件?是哪个方法?
鸿蒙
HarmonyOS
OpenHarmony
赞
收藏 0
回答 1
待解决
相关问题
请教一下listcontainer怎么设置item的左右滑动事件?
6076浏览 • 1回复 待解决
请教一下关于Ticktimer 的疑问?
3467浏览 • 1回复 待解决
请教一下,鸿蒙开发中onReceiveMessage方法的参数是什么类型?
122浏览 • 0回复 待解决
请教一下如何实现函数的重载
780浏览 • 1回复 待解决
#鸿蒙通关秘籍#请教一下,ArkUI中无感监听是啥意思,怎么实现?
140浏览 • 1回复 待解决
请教一下如何开关闪光灯
598浏览 • 1回复 待解决
请教一下关于应用分栏实现
823浏览 • 1回复 待解决
请教2个vp相关的问题,麻烦解答一下
270浏览 • 1回复 待解决
ListContainer的removeItemVisibilityChangedListener事件 怎么用?
3866浏览 • 1回复 待解决
请教一下linux安装deveco时出现xmodem失败的问题
8350浏览 • 1回复 待解决
#鸿蒙通关秘籍#请教一下,ArkUI组件快照怎么获取,有人能帮帮吗?
62浏览 • 1回复 待解决
#鸿蒙通关秘籍#请教一下,ArkUI中当前Ability的FocusControl怎么获取,有人能帮帮吗?
115浏览 • 1回复 待解决
请教一下想要开发鸿蒙系统的智能电视用什么硬件方案
6094浏览 • 1回复 待解决
#鸿蒙通关秘籍#请教一下,ArkUI页面路由应该怎么做,有人能帮帮吗?
166浏览 • 1回复 待解决
请教一下鸿蒙有没有类似安卓的FrameLayout这个组件?鸿蒙中是用什么代替?
2505浏览 • 1回复 待解决
#鸿蒙通关秘籍#请教一下,ArkUI中当前Ability的ContextMenuController怎么获取,有谁知道不?
154浏览 • 1回复 待解决
#鸿蒙通关秘籍#请教一下,ArkUI中组件的媒体查询怎么实现,有人能帮帮吗?
144浏览 • 1回复 待解决
#鸿蒙通关秘籍#请教一下,ArkUI中组件的光标控制怎么实现,有人能帮帮吗?
108浏览 • 1回复 待解决
#鸿蒙通关秘籍#请教一下,ArkUI中组件的属性动画怎么玩,有人能帮帮吗?
193浏览 • 1回复 待解决
polardb 的各位大神,请教一下:开源的PFS的件系统扩展功能
2854浏览 • 1回复 待解决
#鸿蒙通关秘籍#请教一下,ArkUI中当前窗口的UIContext怎么获取,有谁知道不?
106浏览 • 1回复 待解决
#鸿蒙通关秘籍#请教一下,ArkUI中组件的显式立即动画怎么用,有人能帮帮吗?
135浏览 • 1回复 待解决
#鸿蒙通关秘籍#请教一下,ArkUI中当前组件的UIContext怎么获取,有谁知道不?
87浏览 • 1回复 待解决
#鸿蒙通关秘籍#请教一下,ArkUI中当前Ability的MeasureUtil怎么获取,有谁知道不?
101浏览 • 1回复 待解决
#鸿蒙通关秘籍#请教一下,ArkUI中菜单控制器怎么获取,有谁知道不?
109浏览 • 1回复 待解决
tem的左右滑动,楼主可以尝试下设置setDraggedListener,代码样例如下
private Point componentpoint;
convertView.setDraggedListener(Component.DRAG_HORIZONTAL,new Component.DraggedListener() {
@Override
public void onDragDown(Component component, DragInfo dragInfo) {
LogUtil.info(TAG,"---onDragDown---"+dragInfo.downPoint.getPointX());
}
@Override
public void onDragStart(Component component, DragInfo dragInfo) {
LogUtil.info(TAG,"---onDragStart---"+dragInfo.startPoint.getPointX());
pointStart = dragInfo.startPoint;
LogUtil.info(TAG,"onDragStart::component.getContentPositionX():"+component.getContentPositionX());
componentpoint = new Point(component.getContentPositionX(),component.getContentPositionY());
}
@Override
public void onDragUpdate(Component component, DragInfo dragInfo) {
LogUtil.info(TAG,"---onDragUpdate---"+dragInfo.updatePoint.getPointX());
float xOffset = dragInfo.updatePoint.getPointX() - pointStart.getPointX();
LogUtil.info(TAG,"onDragUpdate::component.getContentPositionX():" + component.getContentPositionX());
if((componentpoint.getPointX() + xOffset) > 0 ) {
component.setContentPosition(componentpoint.getPointX() + xOffset, componentpoint.getPointY());
componentpoint = new Point(component.getContentPositionX(),component.getContentPositionY());
}
}
@Override
public void onDragEnd(Component component, DragInfo dragInfo) {
float xOffset = dragInfo.updatePoint.getPointX() - pointStart.getPointX();
LogUtil.info(TAG,"onDragEnd::xOffset:" + xOffset);
if((componentpoint.getPointX() + xOffset) > 0 && (componentpoint.getPointX() + xOffset) < screenWidth / 2) {
component.setContentPosition(0, componentpoint.getPointY());
} else if ((componentpoint.getPointX() + xOffset) > 0 && (componentpoint.getPointX() + xOffset) >= screenWidth / 2) {
deleteItem(position);
}
LogUtil.info(TAG,"onDragEnd::componentpoint.getPointX():"+componentpoint.getPointX());
}
@Override
public void onDragCancel(Component component, DragInfo dragInfo) {
LogUtil.info(TAG,"---onDragCancel---"+dragInfo.updatePoint+"::"+dragInfo.xOffset);
}
@Override
public boolean onDragPreAccept(Component component, int dragDirection) {
return true;