Frage

Angenommen habe ich eine Scroll-Ansicht in einer Ansicht und Größe einer Scroll-Ansicht ist 320 Breite 2000 Höhe.

Wenn der Benutzer scrollt & Verlangsamungs stoppt, ich möchte wissen, wo ein Scroll-Ansicht zum Stillstand gekommen ist?

d. bei 300px oder 400px oder 600px.

War es hilfreich?

Lösung

Mit scrollview.contentOffset.

Andere Tipps

können Sie das afeter Scrollen verfolgen, was die von der Koordinatenursprung ist, die folgenden zwei Methoden verwenden.  Dies sind zwei Delegatmethoden passt sich an Ihre UIScrollView-Klasse.

-

 (void)scrollViewDidEndScrollingAnimation:(UIScrollView *)newScrollView
{
    NSLog(@"scrollViewDidEndScrollingAnimation");
    CGPoint p = scrollView.contentOffset;


    int curr= floor(p.x/320);

    NSLog(@"x=%f,y=%f,curr=%d",p.x,p.y,curr);

}
- (void)scrollViewDidEndDecelerating:(UIScrollView *)newScrollView
{

    [self scrollViewDidEndScrollingAnimation:newScrollView];

}

Wenn die Scroll-Ansicht scrollt getan, es einige Ereignisse seiner UIScrollViewDelegate feuert:

- (void)scrollViewDidScroll:(UIScrollView *)scrollView
- (void)scrollViewDidEndDecelerating:(UIScrollView *)scrollView

Sie können diese Methoden in den Delegaten implementieren die neue contentOffset Ihrer UIScrollView, um herauszufinden:

@property(nonatomic) CGPoint contentOffset

Sie können herausfinden, wo jede Ansicht durch einen Blick auf seinem Rahmen rect seine Super relativ befindet. Was versuchst du zu machen?

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top