标签:
@property(nonatomic) BOOL scrollsToTop 这个属性在起作用 默认是YES
如 果我们在IB里面加入这些UITableView,通常我们也会把delegate和datasource也关联到同一个ViewController 里面。这就是问题所在了。把UITableView里面的scrollToTop方法设为YES(默认是YES)就能使得该UITableView在点击 顶部状态栏的时候把table滚到顶部。但是多个table同时关联到controller的时候,这个方法就失效了。
talbeView1.scrollsToTop =
NO
;
tableView2.scrollerToTop =
YES
;
talbeView1.hidden =
NO
;
tableView2.hidden =
YES
;
@property(nonatomic,strong) NSMutableArray *tdoclist;
//设置一个数组,存储tableview
1 self.tdoclist=[NSMutableArray arrayWithCapacity:10]; 2 3 for (int i=0; i<[self.category count]+1; i++) { 4 5 [[[CommenData alloc]init] setCategoryIndex:[self getCategoryIndex:i]]; 6 7 if (i==0) { 8 9 self.doctable=[self.storyboard instantiateViewControllerWithIdentifier:@"docview"]; 10 11 self.doctable.view.frame=CGRectMake(r.size.width*i, 0.0, r.size.width, r.size.height-40); 12 13 [self addChildViewController:self.doctable]; 14 15 self.doctable.tableView.scrollsToTop=YES; 16 17 [self.tdoclist addObject:self.doctable]; 18 19 [self.tableScroll addSubview:self.doctable.view]; 20 21 }else{ 22 23 self.tdoctable=[self.storyboard instantiateViewControllerWithIdentifier:@"tdocview"]; 24 25 self.tdoctable.view.frame=CGRectMake(r.size.width*i, 0.0, r.size.width, r.size.height-40); 26 27 [self addChildViewController:self.tdoctable]; 28 29 self.tdoctable.tableView.scrollsToTop=NO; 30 31 [self.tdoclist addObject:self.tdoctable]; 32 33 [self.tableScroll addSubview:self.tdoctable.view]; 34 35 } 36 37 }
//左右滑动页面切换tableview时切换 tableview的scrollToTop属性
1 -(void)scrollViewDidScroll:(UIScrollView *)scrollView{ 2 3 //加载之后的一页 4 5 if (scrollView==self.tableScroll) { 6 7 CGFloat pageWidth=scrollView.frame.size.width; 8 9 int page=floor((scrollView.contentOffset.x-pageWidth/2)/pageWidth)+1; 10 11 if (page!=indexPage) { 12 13 //可以继续滚动 14 15 if (indexPage<[self.category count]+1) { 16 17 indexPage=page; 18 19 [self.scrollnavi setSelectedIndex:indexPage]; 20 21 for (int i=0; i<self.tdoclist.count; i++) { 22 23 TDocTableViewController *tdocs = self.tdoclist[i] ; 24 25 if (i==indexPage) { 26 27 tdocs.tableView.scrollsToTop=YES; 28 29 }else{ 30 31 tdocs.tableView.scrollsToTop=NO; 32 33 } 34 35 } 36 37 //若直接用self.tdoc 只会刷新最后一个页面 38 39 TDocTableViewController *tdoc = self.tdoclist[indexPage] ; 40 41 [tdoc refreshData]; 42 43 } 44 45 } 46 47 } 48 49 }
标签:
原文地址:http://www.cnblogs.com/iCocos/p/4777497.html