2013-11-25 123 views
0

我一直試圖在自定義UITableViewCell內設置UIScrollView。我曾嘗試在自定義.xib文件中添加UIScrollView,對其進行子類別劃分,並將其作爲子視圖手動添加到cellForRowAtIndexPath方法中的UITableViewCell。在所有這些中,我已將UIScrollViewcontentSize設置爲cellForRowAtIndexPath。但無論如何,我都無法使其水平滾動。這裏有一些代碼給你一個想法。UITableViewCell內部的UIScrollView - 水平滾動

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath 
{ 
    NSString *CellIdentifier = @"Custom_Cell"; 
    if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad) { 
    CellIdentifier = @"Custom_Cell"; 
    } 

CustomCell *cell = (CustomCell *)[self.fpTable dequeueReusableCellWithIdentifier:CellIdentifier]; 

if (cell == nil) { 

    NSArray *nib = [[NSBundle mainBundle] loadNibNamed:CellIdentifier owner:nil options:nil]; 
    // cell = [nib objectAtIndex:0]; 

    for(id currentObject in nib) 

    { 

     if([currentObject isKindOfClass:[CustomCell class]]) 

     { 
      cell = (CustomCell *)currentObject; 

      break; 
     } 
    } 

    cell.autoresizingMask = UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight; 
} 

[cell.pgCellScroll setContentSize:CGSizeMake(160*3 + (5*4), 160)]; 

[cell.pgCellScroll setScrollEnabled:YES]; 

[cell.pgCellScroll setDelaysContentTouches:YES]; 
[cell.pgCellScroll setCanCancelContentTouches:NO]; 

} 

任何想法,我哪裏出錯了?任何幫助表示讚賞。

回答

1

分配一個委託到兩個表視圖和滾動視圖裏面,並在這些(那些)代表(一個或多個)實現gestureRecognizer:

- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldRecognizeSimultaneouslyWithGestureRecognizer:(UIGestureRecognizer 
*)otherGestureRecognizer { 
    return YES; } 
+0

所以,我要繼承兩個的tableView和滾動視圖,然後實現它委託在這兩個類中的方法? –

+0

你已經有了一個tableView委託。只需在其中實施此方法。對於scrollView,您可以將委託分配給同一個對象(該對象可能是您的視圖控制器)。 – johnyu