2010-08-08 2 views
1

У меня есть UITableView внутри представления, созданного из NIB. таблица имеет один раздел, содержащий 6 строк и 1 нижний колонтитул. когда я использую:UITableView Случайная белая линия в нижнем колонтитуле секции при возврате должного размера нижнего колонтитула

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

, чтобы вернуть высоту нижнего колонтитула, который загружается из того же NIB. UITableViewCell в бобах имеет высоту 80. UITableViewCells назначается с помощью этого кода:

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath 
{ 

если (indexPath.section == 0) { если (indexPath.row == 0) { возвратного companyCell ; }

if (indexPath.row == 1) { возвращение firstNameCell; } if (indexPath.row == 2) { возвращение lastNameCell; } if (indexPath.row == 3) { return emailCell; } if (indexPath.row == 4) { return passwordCell; } if (indexPath.row == 5) { return passwordConfirmCell; } }

return passwordConfirmCell; 
} 

я получаю белую линию в нижней части моего стола, как на картинке в http://swnsn.com/white.png

если я вернуть высоту нижнего колонтитула из 79, или 81, белая линия уходит и UITableViewCell масштабируется до ширины окна

любые мысли?

+0

извините за ошибки форматирования кода выше. stackoverflow обеспечил правильный просмотр, когда я ввел его. – swnsn

+0

также изображение нижнего колонтитула 81px находится по адресу http://swnsn.com/nowhite.png – swnsn

ответ

3

Я понял это !! Я передавал экземпляр UITableViewCell в нижний колонтитул. Я обновляю свой код, чтобы передать только UIView, и проблема решена!

1

Вы пробовали больше манипулировать строками, подобным этому, с точки зрения высоты?

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

NSUInteger row = [indexPath row]; 
Question *question = [self.questions objectAtIndex:row]; 
NSString *theText = question.description; 
UIFont *font = [UIFont fontWithName:@"Helvetica" size:14.0]; // You can choose a different font ofcourse. 
int heightExtra = 0; 
if (selectedIndexSegment == 0){ 
    heightExtra = 54;  
}  
if (selectedIndexSegment == 1) {   
    heightExtra = 24; 
} 

CGSize withinsize = CGSizeMake(theTableView.frame.size.width -60, 1000); //1000 is just a large number. could be 500 as well 
// You can choose a different Wrap Mode of your choice 
CGSize sz = [theText sizeWithFont:font constrainedToSize:withinsize  lineBreakMode:UILineBreakModeWordWrap]; 
    return sz.height + heightExtra; // padding space of 20 should be fine! 
} 

А также как о

self.tableView.separatorColor = [UIColor clearColor]; 

Надеется, что это помогает ...

+1

self.tableView.separatorColor = [UIColor clearColor]; также удаляет все разделители из таблицы. – swnsn

+0

Мне еще нужно попробовать другой код. – swnsn

Смежные вопросы