2017-05-11 1 views
0

UIScrollViews haben das standardmäßige iOS-Verhalten, bei dem ein Benutzer über den Anfang des Bildschirms hinaus scrollen kann und der gesamte Bildschirm springt, um anzuzeigen, dass er nicht weiter aufsteigen kann. Nachdem sie freigegeben wurden, bringt es sie auf eine federleichte Weise zum ursprünglichen Inhaltsoffset von 0 zurück.Verhindern, dass UIScrollView über die Startposition hinausgeht

Gibt es eine Möglichkeit, die native Funktionalität zu entfernen? Ich möchte grundsätzlich nur, dass sie nach unten scrollen (und nur sichern, wenn der Inhalts-Offset> 0 ist).

Ich weiß, wie in das Scrolling-Ereignis zu sagen Inhalt Offset < = 0 dann Inhalt Offset = 0, aber das lässt sie immer noch ziehen und es ändert nur, nachdem sie loslassen. Ich möchte wirklich nicht, dass der Scrollview nach oben geht < = 0.

Danke!

Antwort

0

Sie können den Bounce deaktivieren.

In Ihrem Storyboard im Inspektor Attribute durch diese drei Boxen unchecking:

enter image description here

oder programmatisch:

yourScrollView.bounces=false 
yourScrollView.alwaysBounceVertical=false 
yourScrollView.alwaysBounceHorizontal=false 
+0

danke das ist es! – NullHypothesis

0

Wenn Sie es wünschen unten abprallen, aber nicht top Sie können ein Gerät Delegieren Sie auf scrollview und verwenden Sie die folgende Funktion:

func scrollViewDidScroll(scrollView: UIScrollView) { 
    if scrollView.contentOffset.y <= 0 { 
     scrollView.contentOffset = CGPointZero 
    } 
} 
Verwandte Themen