2014-05-24 2 views
0

UITableView와 관련된 두 가지 질문이 있습니다.UITableView 머리글 간격 및 프로그래밍 방식으로 크기 조정

1) 첫 번째 질문은 UITableView의 상단에있는 갭은 무엇입니까? 내 응용 프로그램은 항상 두 번째 이미지에 표시된 것처럼 테이블 뷰의 맨 위에 플러시되지 않는 최상위 셀부터 시작하여 하나의 셀을 더 낮게 시작합니다 (즉, 인터페이스 빌더에 해당 간격이있는 경우). 나는 그것이 어디에서 왔는지, 왜 그것이 어디서 오는지 알 수 없다.

2) uitableview의 크기를 프로그래밍 방식으로 프로그래밍 할 수없는 것 같습니다. 팝업이 나타난 후 높이를 줄이려고합니다. 두 번째 그림에서 작동하지 않는 예를 보여 줬습니다. 여기

내가 지금 노력하고 무엇을 (예)입니다 :

- (void)viewDidLoad 
{ 
    [super viewDidLoad]; 
    self.table_view.delegate = self; 

    CGRect tableBounds = self.table_view.bounds; 
    tableBounds.size.height -= 100; 
    self.table_view.bounds = tableBounds; 

    CGRect tableFrame = self.table_view.frame; 
    tableBounds.size.height -= 100; 
    self.table_view.frame = tableFrame; 
} 

감사합니다! 선정

jQuery과 :

Table View

시뮬레이션 : 당신의 XIB (또는 스토리 보드)에서

Simulation

+0

자동 레이아웃을 사용 중지하고 작동하는지 확인하십시오. 만약 그렇다면 당신은 당신의 제약을 다시 생각하고 싶어 할 것입니다. – NavinDev

답변

0

위치 (0,0)에서 당신의 jQuery과를 넣어. (내비게이션 막대와 동일한 위치).

0

첫 번째 이미지는 인터페이스보기에서 테이블보기에 문제가 있음을 보여줍니다. 상위 인세 트를 잘못 설정 한 것처럼 보입니다. 가장자리 인세 트를 확인하십시오.

크기 조정 코드가 작동하지 않는 이유는 아마도 너무 이르다는 것입니다 (viewDidLoad). viewDidAppear:에 넣고 작동하는지 확인한 다음 다시 작동하면 다시 viewWillAppear:으로 이동하여 사용자가 크기를 볼 수 없도록하십시오. 작동하지 않으면 자동 레이아웃을 사용하고있을 수 있습니다. 자동 레이아웃으로 프레임이 지정된 프레임의 프레임을 수동으로 변경할 수 없습니다. (귀하의 크기 조정 코드도 바보 같으 므로 테두리가 아닌 프레임을 설정하고 싶습니다.) 그러나 UINavigationController에서 UITableViewController를 사용하고있을 수도 있습니다. 그렇게하면 테이블보기가 탐색 컨트롤러의 직접 컨트롤 아래에 있으며 크기는 사용자가 결정할 수 없습니다.

관련 문제