0

クリックしたときにセルを大きくするにはどうすればよいですか?

これは、動作していない私の現在のコードです。

    - (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
    UITableViewCell *cell = [feedsTableView dequeueReusableCellWithIdentifier:@"MyIdentifier"];
    static NSString *CellIdentifier = @"Cell";
    cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:CellIdentifier] ;

    ell.frame = CGRectMake(cell.frame.origin.x, cell.frame.origin.y, 320.0, 250.0);
    NSLog(@"[CELL CLICK] %i", indexPath.row);

    [feedsTableView beginUpdates];
    [feedsTableView endUpdates];

    [feedsTableView deselectRowAtIndexPath:indexPath animated:YES];
}
4

1 に答える 1

2

次のようなことができます。

NSIndexPath *selectedIndex;

- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath
{
  if (indexPath == selectedIndex)
    return 80.0f;
  else
    return 50.0f;
}

次に、didSelectRowAtIndex で selectedIndex 変数を設定し、次のようにテーブルビューをリロードします。

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
  selectedIndex = indexPath;
  [tableView reloadRowsAtIndexPaths:indexPath withRowAnimation:UITableViewRowAnimationMiddle];
}
于 2013-07-01T23:07:05.607 に答える