2013-02-28 5 views
3

분할 뷰 컨트롤러를 만들었습니다. 테이블 뷰의 크기를 줄이고 싶지만 tableView 컨트롤러가 내장되어 있으므로 테이블의 크기를 변경할 수있는 방법이 있습니다. 코드의 의미는 단지 4 행을 가지고 있으며 splitViewController의 모든면을 가져옵니다. tableViewController의 크기를 줄이려고합니다. 내 루트 컨트롤러에서이 문제를 해결할 수있는 방법은 tableViewController입니다.tableview 컨트롤러에서 tableView의 크기를 변경하는 방법

나는 테이블의 이미지 아래에 이미지가 첨부되어있어 3 개의 레코드 만 있으므로 빈 줄도 표시하는 3 줄만 표시해야합니다.

enter image description here

답변

1

당신은 jQuery과의 대리자 메서드의 각 행의 높이를 설정할 수 있습니다 당신이 높이를 설정 한 후에는 reload 테이블에해야

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

.

편집 :

- (void) viewDidLoad 
{ 
    [super viewDidLoad]; 

    self.tableView.tableFooterView = [[[UIView alloc] init] autorelease]; 
} 
+0

당신은이 문제를 해결하고이 –

+0

의 단지 바꾸는 셀 높이가없는 테이블이 hieght –

+0

@NaziaJan을이 문제를 해결하는 방법을 설명해주십시오 수 있습니다 : 당신이 그 여분의 흰색 선을 제거하려면 어느 쪽이 오나요? – Rushi

0

이 코드를 추가 할 수 있습니다. 이것은이

- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath 
{ 
    //Set height according to your condition 
    if (indexPath.row == 0) 
    { 
    } 
    else 
    { 
    } 
} 

하여 행의 당신의 UITableView

- (void) addFooter 
{ 
    UIView *v = [[UIView alloc] initWithFrame:CGRectZero]; 

    [self.myTableView setTableFooterView:v]; 

    [v release]; 
} 

또한 설정할 수 있습니다 높이 여분의 라인을 표시하지 않습니다 그리고 당신은 당신의 UITableView

[tableview reloadData]; 

편집을 다시로드 할 수 있습니다 : 호출 기능 addFooter in - (UIView *)tableView:(UITableView *)tableView viewForFooterInSection:(NSInteger)section

하고이를 추가 할 수도

- (float)tableView:(UITableView *)tableView heightForFooterInSection:(NSInteger)section { 
    // This will create a "invisible" footer 
    return 0.01f; 
} 
+0

어디에서 footer 메서드를 추가하고 어떤 코드를 다시 호출 할 수 있습니까? delegate 메서드에서 해당 함수의 높이를 설정 한 다음 테이블 뷰의 내용을로드 할 필요가있을 때만 tableview를 다시로드 할 필요가없는 경우 –

+0

을 리로드 할 수 있습니다. 기능. –

관련 문제