選択されていないときの高さが100pxで、選択されているときは144pxに拡大するセル(videoCell)があります。拡張された 44 ピクセルで、ストーリーボードを介してツールバー (detailToolbar) を配置しました。
ここに私の問題があります。ツールバーでユーザー操作が有効になっている場合は、バー ボタンが機能し、セルを閉じるには、セルの元の 100 ピクセルのいずれかをタップするだけです。ただし、セルを拡張しようとすると問題が発生します。選択されていないセルの下部 44 ピクセルをタップすると、何もトリガーされませんが、上部 56 ピクセルが選択されている場合にのみ応答します。セルの背後にある detailToolbar が機能を妨げていると想定しています。
これが私のコードです。サイモン・リーのチュートリアルを使用してセルを展開しています。
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath {
// If our cell is selected, return double height
if([self cellIsSelected:indexPath]) {
return 144.0;
}
// Cell isn't selected so return single height
return 100.0;
}
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
// Deselect
[self.tableView deselectRowAtIndexPath:indexPath animated:YES];
self.tableView.clipsToBounds = YES;
// Store cell 'selected' state keyed on indexPath
NSNumber *selectedIndex = [NSNumber numberWithBool:isSelected];
[selectedIndexes setObject:selectedIndex forKey:indexPath];
// This is where magic happens...
[self.tableView beginUpdates];
[self.tableView endUpdates];
}