У меня проблема с таблицей и пользовательской ячейкой.
У меня есть следующий код:
- (void)viewDidLoad {
[super viewDidLoad];
}
// =================================================================================================
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView {
return 1;
}
// =================================================================================================
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
return 1;
}
// =================================================================================================
// Customize the appearance of table view cells.
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
static NSString *CellIdentifier = @"MyCustomCell";
MyCustomCell *cell = (MyCustomCell*)[tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil) {
UIViewController *c = [[UIViewController alloc] initWithNibName:CellIdentifier bundle:nil];
cell = (MyCustomCell*)c.view;
[c release];
}
return cell;
}
- (void)tableView:(UITableView *)tableView willDisplayCell:(UITableViewCell *)cell forRowAtIndexPath:(NSIndexPath *)indexPath {
MyCustomCell* theCell = (MyCustomCell*)cell;
theCell.theTextView.text = @"Label My Label";
}
// =================================================================================================
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath {
return 100; // -- In fact it's dynamic
}
При использовании этого кода на симуляторе происходит странное поведение (iOS4,2).У меня есть только одна ячейка (сгруппированный просмотр таблицы).Когда я прокручиваю список, чтобы ячейка исчезла в верхней части экрана, а затем, когда я отпускаю ее, вместо простой прокрутки вниз, список внезапно появляется на экране, как будто я никогда не прокручивал его, а затем прокручиваюнемного (около 25 пикселей, на самом деле вверху моего TextView) наверх.
Если я удалю или прокомментирую theCell.theTextView.text = @ "Label My Label";тогда нет проблем, и список работает как обычно.Проблема не существует, если я прокручиваю немного вверх, чтобы ячейка не исчезала.Проблема та же, если у меня много строк, и первая ячейка пересекает верх.
TextView находится внутри UITableCellView, а текстовое представление достаточно велико, чтобы отображать текст в виде однострочного текста.
Можете ли вы увидеть, в чем проблема?
Пожалуйста, просто прокомментируйте, чтобы попросить дополнительную информацию или просто предложения, если у вас нет ответа, чтобы другие люди увидели, что еще нетответьте на этот вопрос.
Спасибо за помощь.