yuzhilin

拖拽复位

@@ -15,7 +15,6 @@ const LOCAL_CHANNEL: string = '地方频道' @@ -15,7 +15,6 @@ const LOCAL_CHANNEL: string = '地方频道'
15 @CustomDialog 15 @CustomDialog
16 struct ChannelDialog { 16 struct ChannelDialog {
17 @State dragItem: number = -1 17 @State dragItem: number = -1
18 - @State item: number = -1  
19 private dragRefOffsetX: number = 0 18 private dragRefOffsetX: number = 0
20 private dragRefOffsetY: number = 0 19 private dragRefOffsetY: number = 0
21 @State offsetX: number = 0 20 @State offsetX: number = 0
@@ -235,7 +234,7 @@ struct ChannelDialog { @@ -235,7 +234,7 @@ struct ChannelDialog {
235 .alignContent(Alignment.Start) 234 .alignContent(Alignment.Start)
236 .height(36) 235 .height(36)
237 .onClick(() => { 236 .onClick(() => {
238 - AppStorage.set('indexSettingChannelId',item.channelId) 237 + AppStorage.set('indexSettingChannelId', item.channelId)
239 }) 238 })
240 }) 239 })
241 } 240 }
@@ -308,6 +307,7 @@ struct ChannelDialog { @@ -308,6 +307,7 @@ struct ChannelDialog {
308 }) 307 })
309 .zIndex(this.dragItem == item.num ? 1 : 0) 308 .zIndex(this.dragItem == item.num ? 1 : 0)
310 .translate(this.dragItem == item.num ? { x: this.offsetX, y: this.offsetY } : { x: 0, y: 0 }) 309 .translate(this.dragItem == item.num ? { x: this.offsetX, y: this.offsetY } : { x: 0, y: 0 })
  310 +
311 .gesture( 311 .gesture(
312 GestureGroup(GestureMode.Sequence, 312 GestureGroup(GestureMode.Sequence,
313 PanGesture({ fingers: 1, direction: null, distance: 0 }) 313 PanGesture({ fingers: 1, direction: null, distance: 0 })
@@ -324,12 +324,20 @@ struct ChannelDialog { @@ -324,12 +324,20 @@ struct ChannelDialog {
324 .onActionEnd((event: GestureEvent) => { 324 .onActionEnd((event: GestureEvent) => {
325 animateTo({ curve: curves.interpolatingSpring(0, 1, 400, 38) }, () => { 325 animateTo({ curve: curves.interpolatingSpring(0, 1, 400, 38) }, () => {
326 this.dragItem = -1 326 this.dragItem = -1
  327 + this.offsetX = 0
  328 + this.offsetY = 0
  329 + this.dragRefOffsetX = 0
  330 + this.dragRefOffsetY = 0
327 }) 331 })
328 }) 332 })
329 ) 333 )
330 .onCancel(() => { 334 .onCancel(() => {
331 animateTo({ curve: curves.interpolatingSpring(0, 1, 400, 38) }, () => { 335 animateTo({ curve: curves.interpolatingSpring(0, 1, 400, 38) }, () => {
332 this.dragItem = -1 336 this.dragItem = -1
  337 + this.offsetX = 0
  338 + this.offsetY = 0
  339 + this.dragRefOffsetX = 0
  340 + this.dragRefOffsetY = 0
333 }) 341 })
334 })) 342 }))
335 343