2013-11-23 2 views
0

이상한 uitableview 동작이 있습니다 - 내 습관 셀에 수정할 수없는 약간의 여분의 공간이 있습니다. 나는 그 공간에서 세포를 움직일 수있다. 나는 나의 영어가 나를 더 잘 설명하게하지 않는 것에 따라 두 개의 그림을 붙였다. 문제는 무엇이 될지에 대한 아이디어가 있습니까? 내 사용자 정의 셀에 대한 코드를 게시 할 수 있지만 admob 셀 추가로 발생하기 때문에 사용자 정의 셀과 관련이 있는지 확신 할 수 없습니다.스트랩 uitableview 셀 동작 : 셀 내부 이동보기

편집 : 높이

EDIT2에 대한 추가 코드 : 나는

scrollView = [[UIScrollView alloc] initWithFrame:CGRectMake(0, 0, self.bounds.size.width,self.bounds.size.height)];

에 스크롤 뷰 ALLOC를 변경 그리고 세포의 이동을 고정. 하지만 그 백선은 여전히 ​​거기에 있습니다.

테이블 뷰

- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath 
{ 


    // return (self.tableViewHome.bounds.size.height-49-6-self.tableViewHome.tableHeaderView.bounds.size.height-self.tableViewHome.tableFooterView.bounds.size.height-GAD_SIZE_320x50.height)/3; 
    float height = self.tableViewHome.frame.size.height-self.tableViewHome.tableHeaderView.bounds.size.height-30.0; 

    if (indexPath.item==5) 
    { 
     height=kGADAdSizeBanner.size.height; 
    } 
    else 
    { 
     if (indexPath.item==1 || indexPath.item==3) 
     { 
      height=15.0; 
     } 
     else 
     { 
     if (indexPath.item==0 || indexPath.item==2 || indexPath.item==4) 
     { 
     height=(height-kGADAdSizeBanner.size.height)/3; 
     } 
     } 
    } 

    NSLog(@"Height:%f",height); 

    return height; 
} 

- (CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section 
{ 
    return 0.1; 
} 

- (CGFloat)tableView:(UITableView *)tableView heightForFooterInSection:(NSInteger)section 
{ 
    return 0.1; 
} 

사용자 정의 셀

-(id) initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier 
{ 
    self = [super initWithStyle:style reuseIdentifier:reuseIdentifier]; 
    if (self) 
    { 

     scrollView = [[UIScrollView alloc] initWithFrame:self.bounds]; 
     scrollView.autoresizingMask = UIViewAutoresizingFlexibleHeight; 

     [scrollView setShowsHorizontalScrollIndicator:NO]; 
     [scrollView setShowsVerticalScrollIndicator:NO]; 


//  NSInteger viewcount= 3; 
//  for(int i = 0; i< viewcount; i++) { 

//  CGFloat x = 2 * self.bounds.size.width; 
     todayView = [HomeTodayView homeTodayView]; 
     todayView.frame = CGRectMake(0, 0,self.bounds.size.width, self.bounds.size.height); 
     todayView.backgroundColor = [UIColor redColor]; 




     avgView = [HomeAvgView homeAvgView]; 
     avgView.frame = CGRectMake(self.bounds.size.width, 0, self.bounds.size.width, self.bounds.size.height); 


      // [[HomeTodayView alloc] initWithFrame: 

     todayView.autoresizingMask = UIViewAutoresizingFlexibleHeight; 
     avgView.autoresizingMask = UIViewAutoresizingFlexibleHeight; 
     [scrollView addSubview:todayView]; 
     [scrollView addSubview:avgView]; 


     scrollView.contentSize = CGSizeMake(self.bounds.size.width *2, self.bounds.size.height+100); 
     scrollView.pagingEnabled = YES; 
     scrollView.bounces = NO; 


     [self addSubview:scrollView]; 



    } 
    return self; 
} 

Lowest

Max

+0

그룹화 된 테이블보기가 있습니까? –

+0

예. 그것을 평범한 것으로 바꿨지 만 아무런 차이가 보이지 않는다. – user2067051

답변

0

이 시도 :

[table setSeparatorStyle : UITableViewCellSeparatorStyleNone];

참고 : - table = 사용자의 테이블 뷰 이름입니다.

그래도 작동하지 않으면 사용자 정의 셀 높이와 tableView의 행 높이가 동일한 지 확인하십시오.

+0

제안에 감사하지만 도움이되지 않았다. 높이 설정을위한 코드를 추가했습니다. 실수가있을 수 있습니까? – user2067051

+0

그건 내 제안이었을 테니, 그냥 cellForRowAtIndexPath 바깥에 설정하고 있는지 확인해도 될까요? 즉, 개별 셀이 아닌 테이블 전체에 대한 설정입니다. 어쩌면 viewDidLoad에서 할 수 있습니다. – bobsmells

+0

viewDidLoad에서 구분 기호 스타일을 설정 하시겠습니까? – user2067051