2016-11-22 4 views
0

Я хочу, чтобы добавить три представления в UIViewController,Настройка UIView класса с UIScrollView и UITableView

  1. UIImageView
  2. прокруткой управления сегмента (HMSegmentedControl)
  3. UIViews (или) UITableViewCells

это выглядит следующим образом: enter image description here

Когда весь вид прокрутки, элемент управления сегмента должен быть расположен в верхней части экрана (например, заголовок в UITableview).

Мой код

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

if ((long)scrollView.tag == 10) { 

    // Main scrollview 
    if (self.lastContentOffset >= scrollview.contentOffset.y) { 
     NSLog(@"Down"); 
     if (scrollview.contentOffset.y < 158.0f) { 
      [scrollview setContentOffset:CGPointMake(scrollview.contentOffset.x, scrollview.contentOffset.y)]; 
      [matchInfoTable setScrollEnabled:NO]; 
      [scrollview setScrollEnabled:YES]; 
     } 
    } else if (self.lastContentOffset <= scrollview.contentOffset.y) { 
     NSLog(@"Up"); 
     NSLog(@"%f",scrollview.contentOffset.y); 
     if (scrollview.contentOffset.y > 138.0f) { 
      [scrollview setScrollEnabled:NO]; 
      [matchInfoTable setScrollEnabled:YES]; 
     } 

     if (scrollview.contentOffset.y >= 163.0f) { 
      [scrollview setContentOffset:CGPointMake(scrollview.contentOffset.x, 163.0f)]; 
      [scrollview setScrollEnabled:NO]; 
      [matchInfoTable setScrollEnabled:YES]; 
     } 
    } 
    self.lastContentOffset = scrollview.contentOffset.y; 

    NSLog(@"LastOffset :: %f",self.lastContentOffset); 

} else if (scrollView.tag == MATCH_INFO) { 
    // match info table 

    if (scrollView.contentOffset.y == 0) { // TOP 
     [scrollview setContentOffset:CGPointMake(scrollview.contentOffset.x, scrollview.contentOffset.y)]; 
     [matchInfoTable setScrollEnabled:NO]; 
     [scrollview setScrollEnabled:YES]; 
    } 
} 
} 

В этом коде, когда управляющий сегмент шпилька в верхней части. Представленный ниже вид не прокручивается непрерывно. Мне нужно снова запустить ее прокрутку.

Все ответы приветствуются!

ответ

0

Я думаю, что лучше использовать UIPageViewController и помещать внутри всех табличных представлений, после чего вы можете обнаруживать удары и менять вкладки.

Также вы можете использовать UISwipeGestureRecognizer и обнаружить левое и правое пойло, описанное в этой статье left and right swipes