2016-04-21 16 views

Antwort

2

Sie sollten func scrollViewDidScroll(scrollView: UIScrollView) in Ihrem UITableViewDelegate implementieren.

func scrollViewDidScroll(scrollView: UIScrollView) { 
    if scrollView.contentOffset.y > 0 { 
     // you scrolled down 
     scrollView.contentOffset.y = 0 
    } 
} 
0

Legen Sie Ihre view-controller als UITableView ‚s Delegierten

self.myTableView.delegate = self; 

und fügen Sie die folgende Methode, um Ihre View-Controller,

-(void)scrollViewDidScroll:(UIScrollView *)scrollView { 
    CGPoint translation = [scrollView.panGestureRecognizer translationInView:scrollView.superview]; 

    if(translation.y > 0){ 
     [scrollView setScrollEnabled:NO]; 
    } else { 
     [scrollView setScrollEnabled:YES]; 
    } 
} 

Ich habe es nicht getestet, aber ich denke, es würde funktionieren.

Bearbeiten: Es tut mir leid, dass ich das Tag das letzte Mal nicht gesehen habe. Hier ist die Swift-Version:

func scrollViewDidScroll(scrollView: UIScrollView) { 
    var translation: CGPoint = scrollView.panGestureRecognizer.translationInView(scrollView.superview) 

    if translation.y > 0 { 
     scrollView.scrollEnabled = false 
    } else { 
     scrollView.scrollEnabled = true 
    } 
} 
-1
- (void)viewDidLoad { 
    myTableView.scrollView.delegate = self; 
} 

-(void)scrollViewDidScroll:(UIScrollView *)scrollView 
{ 
    if (scrollView.contentOffset.y > 0 && scrollViewmyTableView.scrollView) 
    { 
     [scrollView setScrollEnabled:NO]; 
     [scrollView setContentOffset:CGPointMake(0, 0)]; 
    } 
    [scrollView setScrollEnabled:YES]; 
} 
1

hinzufügen tableView.alwaysBounceVertical = false in Ihrer viewDidLoad() Methode.

Dies wird Ihnen helfen, das zu erreichen, was Sie benötigen.

Verwandte Themen