2011-08-07 4 views
-1

페이징 (가로 스크롤)이 가능한 UIScrollView를 만들었고 여러 UITableView 객체를 UIScrollView에 임베드하려고합니다.UITableView를 UIScrollView에 포함하는 방법은 무엇입니까?

어떻게 수행하나요? 샘플 코드가 있습니까?

감사합니다.

+0

사과를 할당 해제하는 것을 잊지 마십시오. UIScolView로 UITableView 사용. – makboney

+0

피하는 이유는 무엇입니까? 내가 원하는 것을 어떻게 재현 할 수 있습니까? – user403015

+0

수정 된 답변 .. – Legolas

답변

-3

편집 :

당신은 당신의 tableView의 개체를 많이 가질 수 있으며 self.tableView.scrollEnabled = YES 그에게 수직 스크롤 뷰를 제공 할 것입니다.

가로 스크롤을 얻으려면 각보기 컨트롤러에 대해 tableView를 만들고 각 페이지에 tableView을 나타내는 UIPageControl을 추가하는 것이 좋습니다.

UIPageControl Documentation을 확인하십시오.

당신은 개발이 튜토리얼을 사용할 수 있습니다 - 당신이 아래 http://cocoawithlove.com/2009/01/multiple-virtual-pages-in-uiscrollview.html

+0

나는 이미 UIScrollView가 수평 스크롤이라고 말했습니다. 당신이 말하는 것은 수직 스크롤입니다. 당신의 대답은 건설적인 것이 아닙니다. – user403015

+0

그래서 3 개의 테이블 뷰가 있다고 가정 해 보겠습니다. 세로로 스크롤 할 수있게하려고합니다. 그리고 각 테이블 뷰를 가로로 스크롤하고 싶습니까? – Legolas

+0

예. 그러나 제안 된 자습서에서는 UITableView와 UIScrollView의 결합 된 사용법에 대해 설명하지 않습니다. 수정 된 답변은 아직 건설적인 것이 아닙니다. – user403015

2

을 별도의 페이지로이 UITableViewControllers을로드하는 예를 찾을 수 있습니다.

// .h File 

@interface PagingViewController : UIViewController <UIScrollViewDelegate>{ 

} 

-(void)loadPage:(int)page; 

@end 



// .m File 

static NSUInteger kNumberOfPages = 2; 

@interface PagingViewController() 

@property(nonatomic,retain)NSMutableArray *viewControllers; 
@property(nonatomic,retain)UIView *contentView; 

@end 

@implementation PagingViewController 

@synthesize viewControllers; 
@synthesize contentView; 


-(id)init{ 

     self = [super init]; 

    if(self) { 

     NSMutableArray *controllers = [[NSMutableArray alloc] init]; 
     for (unsigned i = 0; i < kNumberOfPages; i++) 
     { 
      [controllers addObject:[NSNull null]]; 
     } 
     self.viewControllers = controllers; 
     [controllers release]; 

     contentView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 320, 480)]; 

     self.view = contentView; 

     [self loadPage:0]; 

    } 
    return self; 
} 

- (void)loadPage:(int)page{ 

    if (page < 0) 
     return; 
    if (page >= kNumberOfPages) 
     return; 
    if(page == 0){  
     FirstUITableViewController *firstTableVC = [viewControllers objectAtIndex:page]; 

     if ((NSNull *)firstTableVC == [NSNull null]){ 
      firstTableVC = [[FirstUITableViewController alloc] init]; 
      [viewControllers replaceObjectAtIndex:page withObject:firstTableVC]; 
      [firstTableVC release]; 
     } 

     if (firstTableVC.view.superview == nil) 
     { 
      [contentView addSubview:firstTableVC.view]; 
     } 
    }else if(page == 1){ 

     SecondUITableViewController *secondTableVC = [viewControllers objectAtIndex:page]; 

     if ((NSNull *)secondTableVC == [NSNull null]){ 
      secondTableVC = [[SecondUITableViewController alloc] init]; 
      [viewControllers replaceObjectAtIndex:page withObject:secondTableVC]; 
      [secondTableVC release]; 
     } 

     if (secondTableVC.view.superview == nil) 
     { 
      [contentView addSubview:secondTableVC.view]; 
     } 
    } 
} 

// 엄격하게 그 곳에 갈 것을

관련 문제