2

我无法从如下计算属性返回 DragGesture

'_EndedGesture<_ChangedGesture<DragGesture>>' to return type 'DragGesture'


 var dimDrag : DragGesture {
        DragGesture()
            .onChanged({
                    print("Dim drag")

                    if $0.translation.width > 0 {
                        self.model.menuOffset = max(min($0.translation.width, UIScreen.main.bounds.width*0.7), 0.0)
                    } else {
                        self.model.menuOffset = max(min(UIScreen.main.bounds.width*0.7 + $0.translation.width, UIScreen.main.bounds.width*0.7), 0.0)
                    }

            })
            .onEnded({
                    if $0.translation.width < -100 {
                        withAnimation {
                            self.model.isMenuOpen = true
                            self.model.menuOffset = 0.0
                        }
                    } else if $0.translation.width > 100 {
                        withAnimation {
                            self.model.isMenuOpen = false
                            self.model.menuOffset = UIScreen.main.bounds.width*0.7
                        }
                    }
            })
    }
4

1 回答 1

0

以下对我有用:

let myDrag = {
    DragGesture()
        .onChanged({ value in

        })
        .onEnded { value in

        }
    }()
于 2019-12-06T19:16:39.180 回答