2009-10-20 2 views
3

나는 테이블 뷰 섹션의 머리말과 꼬리말에 텍스트를 인쇄하는 것에 대해 질문을했습니다. 각 행의 꼬리말에 텍스트를 표시하고 싶지만 그렇게하는 데 문제가 있습니다. 다음 섹션을 시작하면 첫 번째 섹션의 아래부터 그리기 시작합니다. 정확히 필요한 정보를 얻으려면 설정 -> 일반 -> 네트워크로 이동하십시오.머리말 및 꼬리표 섹션의 머리말에있는 텍스트

이 화면에는 여러 개의 섹션이 있으며 처음 두 섹션 이후에 푸터 정보가 있습니다.

iPhone 3G에서 확인하십시오. (이 화면이 다른 iPhone에서 사용 가능한지 확실하지 않습니다.)

설명에 설명이 필요하면 알려주세요.


여기에 두 가지 기능을 구현하지만 여기에 잘못 무엇

-(UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section 
{ 
     if (section == 1) 
     { 
     CGRect rect = CGRectMake(10.0f,40.0f,300.0f,250.0f); 

     UILabel* label = [[[UILabel alloc] initWithFrame:rect] autorelease]; 
     label.backgroundColor = [UIColor clearColor]; 
      label.text  = NSLocalizedString(@"MessageHeader","");; 
      label.baselineAdjustment= UIBaselineAdjustmentAlignCenters; 
      label.lineBreakMode = UILineBreakModeWordWrap; 
      label.textAlignment = UITextAlignmentCenter; 
      label.shadowColor = [UIColor whiteColor]; 
      label.shadowOffset = CGSizeMake(0.0, 1.0); 
      label.font  = [UIFont systemFontOfSize:14]; 
      label.textColor  = [UIColor darkGrayColor]; 
      label.numberOfLines = 0; 


      UIView *view = [[[UIView alloc] initWithFrame:rect] autorelease]; 

      [view addSubview:label]; 

      return view; 
     } 
    } 
    return nil;  
} 


- (UIView *)tableView:(UITableView *)tableView viewForFooterInSection:(NSInteger)section 
{ 

    if (section == 1) 
    { 
          CGRect rect  = CGRectMake(10.0f,80.0f,300.0f,250.0f); 

         UILabel* label = [[[UILabel alloc] initWithFrame:rect] autorelease]; 
         label.backgroundColor = [UIColor clearColor]; 
         label.text  = NSLocalizedString(@"MessageFooter",""); 
         label.baselineAdjustment= UIBaselineAdjustmentAlignCenters; 
      label.lineBreakMode  = UILineBreakModeWordWrap; 
      label.textAlignment  = UITextAlignmentCenter; 
      label.shadowColor  = [UIColor whiteColor]; 
      label.shadowOffset  = CGSizeMake(0.0, 1.0); 
      label.font   = [UIFont systemFontOfSize:14]; 
      label.textColor   = [UIColor darkGrayColor]; 
      label.numberOfLines = 0; 
      UIView *view = [[[UIView alloc] initWithFrame:rect] autorelease]; 
      [view addSubview:label]; 

      return view; 
     } 
    } 
    return nil; 
} 

를 원하는대로 표시되지 않습니다? Header & 바닥 글 텍스트가 모든 섹션의 맨 아래까지가는 이유는 무엇입니까?

답변

3

UITableViewDelegate protocol을 사용하면 섹션의 머리글과 바닥 글에 대한보기를 반환 할 수 있습니다. 이 메서드를 구현하고 표시 할 텍스트로 가득 찬 UILabel을 반환하기 만하면됩니다.

+0

안녕하세요 Dave 이것은 나를 위해 작동하지 않습니다, 나는 이미 이것을 시도했습니다. 각 섹션의 텍스트를 표시해야하지만 사용하십시오. (UIView *) tableView : (UITableView *) NSInteger) 섹션 텍스트는 항상 모든 섹션의 맨 아래에 있습니다. 두 섹션에 두 개의 행이 있습니다. 그러나 원하는 텍스트는 표시되지 않습니다. – iamMobile

관련 문제