HarmonyOS ListItem.swipeAction()的第二个参数edgeEffect不起作用
@Entry
@Component
struct ListItemExample2 {
@State arr: number[] = [0, 1, 2, 3, 4]
@State enterEndDeleteAreaString: string = "not enterEndDeleteArea"
@State exitEndDeleteAreaString: string = "not exitEndDeleteArea"
@State isShow:boolean = true;
@Builder itemEnd() {
Row() {
Button("Delete").margin("4vp")
Button("Set").margin("4vp")
}.padding("4vp").justifyContent(FlexAlign.SpaceEvenly)
}
build() {
Column() {
Button("点击").onClick(()=>{
this.isShow=!this.isShow
console.log(this.isShow+"111111111")
})
List({ space: 10 }) {
ForEach(this.arr, (item: number) => {
ListItem() {
Text("item" + item)
.width('100%')
.height(100)
.fontSize(16)
.textAlign(TextAlign.Center)
.borderRadius(10)
.backgroundColor(0xFFFFFF)
}
.transition({ type: TransitionType.Delete, opacity: 0 })
.swipeAction({
end: this.isShow?{
builder: () => { this.itemEnd() },
onAction: () => {
animateTo({ duration: 1000 }, () => {
let index = this.arr.indexOf(item)
this.arr.splice(index, 1)
})
},
actionAreaDistance: 56,
onEnterActionArea: () => {
this.enterEndDeleteAreaString = "enterEndDeleteArea"
this.exitEndDeleteAreaString = "not exitEndDeleteArea"
},
onExitActionArea: () => {
this.enterEndDeleteAreaString = "not enterEndDeleteArea"
this.exitEndDeleteAreaString = "exitEndDeleteArea"
}
}:undefined
,edgeEffect:SwipeEdgeEffect.None
})
}, (item: string) => item)
}
Text(this.enterEndDeleteAreaString).fontSize(20)
Text(this.exitEndDeleteAreaString).fontSize(20)
}
.padding(10)
.backgroundColor(0xDCDCDC)
.width('100%')
.height('100%')
}
}
HarmonyOS
赞
收藏 0
回答 1
待解决
相关问题
hilog的private参数不起作用
5914浏览 • 1回复 待解决
Preferences不起作用
4189浏览 • 1回复 待解决
HarmonyOS异步await不起作用
424浏览 • 1回复 待解决
JSUI 怎么在第二个页面修改第一个页面的数据?
4398浏览 • 2回复 待解决
HarmonyOS router.back不起作用
110浏览 • 1回复 待解决
HarmonyOS column设置圆角不起作用
518浏览 • 1回复 待解决
tablist 可不可以默认从第二个开始,如下图所示
245浏览 • 1回复 待解决
HarmonyOS data_preferences remove不起作用
193浏览 • 1回复 待解决
代码里面Tabs是没有设置index的,添加第二个参数的时候,页面会显示不正常,这个该如何解决?
1757浏览 • 1回复 待解决
HarmonyOS @Builder 修饰的api中,设置圆角不起作用
438浏览 • 1回复 待解决
第一个返回true或者false是否影响第二个进入?
810浏览 • 1回复 待解决
Column 高度设置为 "100%"内部设置两个Row,其中一个高度100,另一个高度"100% "第二个内容会被挤下去?
293浏览 • 1回复 待解决
HarmonyOS HiLog打印日志换行符‘\n’不起作用
528浏览 • 1回复 待解决
harmonyOS编写一个颜色渐变的背景资源文件,引用不起作用
10525浏览 • 3回复 待解决
HarmonyOS List组件的scroller.scrollToIndex()在某些场景不起作用
319浏览 • 1回复 待解决
轻量级智能穿戴设备的transform为什么不起作用?
5969浏览 • 1回复 已解决
设置状态栏颜色不起作用怎么回事?
2431浏览 • 1回复 待解决
在Button的onClick事件中设置定时器不起作用
1808浏览 • 1回复 待解决
为什么调用$r的时候,下面代码中第一个图标能加载出来,第二个加载不出来。不是等价的吗?
1797浏览 • 1回复 待解决
HarmonyOS textinput defaultFocus 失效不起作用(期望该界面出现的时候默认弹出键盘)
495浏览 • 1回复 待解决
HarmonyOS TextInput焦点在弹窗第一次打开时不起作用
332浏览 • 1回复 待解决
连接真机的时候,会提示error: no signature file.,配置自动签名不起作用
740浏览 • 1回复 待解决
重写 onBackPressed() 方法,去掉 super.onBackPressed()仍不起作用
1982浏览 • 1回复 待解决
HarmonyOS ListItem的swipeAction横滑,能否手动控制展开或者收起?
386浏览 • 0回复 待解决
HarmonyOS 如何将listitem的swipeAction滑动效果恢复至未滑动?
373浏览 • 1回复 待解决
1、SwipeEdgeEffect.None:当设置为SwipeEdgeEffect.None时,Listitem划动距离不能超过划出组件大小。如果设置了删除区域,ListItem划动距离不能超过删除阈值,并且在设置删除回调的情况下,达到删除阈值后松手触发删除回调。适用场景:适用于需要严格限制Listitem划动距离的场景,如避免用户意外滑动到不希望的区域。
2、SwipeEdgeEffect.Spring:当设置为SwipeEdgeEffect.Spring时,Listitem划动距离超过划出组件大小后可以继续划动。如果设置了删除区域,ListItem划动距离超过删除阈值后可以继续划动,松手后按照弹簧阻尼曲线回弹。适用场景:适用于需要一定弹性和交互性的场景,如用户可以通过一定的划动距离删除内容或移动列表项。
主要区别如下划动限制:SwipeEdgeEffect.None限制划动距离,而SwipeEdgeEffect.Spring没有此限制,可以继续划动。删除阈值:SwipeEdgeEffect.None需要设置删除区域,当划动距离超过删除阈值后触发删除回调,而SwipeEdgeEffect.Spring可以自动根据划动距离触发删除回调。
使用场景:SwipeEdgeEffect.None适用于需要严格限制划动距离的场景,如避免用户意外滑动到不希望的区域。SwipeEdgeEffect.Spring适用于需要一定弹性和交互性的场景,如用户可以通过一定的划动距离删除内容或移动列表项。
可以看出设置actionAreaDistance: 56,太小了,两中都会触发删除,可以设置一个稍微大一点的值