私は..のようなテーブルビューを持っています
セル xxxx、yyyy、zzzz は固定されているため、クリック アクションはありません。ただし、セル「表示」はクリック可能です。「表示」セルをクリックすると、その下に6つのセルが表示されます。
したがって、「表示」セルをクリックすると、表は次のようになります。
ここで、私がやったことは、
cell.textLabel.text
「表示」→「非表示」に変更メソッドで使用
[tableView reloadData];
されtableView:didSelectRowAtIndexPath:
ます。
私のコードは次のとおりです。
- (void)viewDidLoad
{
[super viewDidLoad];
self.title = @"My title";
// This Mutable array contains the hided cell objects
hidedCellsArray = [[NSMutableArray alloc] initWithObjects:@"Cell 1", @"Cell 2", @"Cell 3", @"Cell 4", @"Cell 5", @"Cell 6", nil];
}
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
...
else if(indexPath.section == 1)
{
if (isShowClicked) //isShowClicked is a boolean value that determines whether the show cell was clicked or not
{
if (indexPath.row == 0)
{
cell.textLabel.text = @"Hide";
cell.selectionStyle = UITableViewCellSelectionStyleBlue;
cell.textLabel.textAlignment=UITextAlignmentCenter;
}
else
{
cell.textLabel.text = [hidedCellsArray objectAtIndex:indexPath.row-1];
cell.selectionStyle = UITableViewCellSelectionStyleBlue;
cell.textLabel.textAlignment=UITextAlignmentCenter;
}
}
else
{
cell.textLabel.text = @"Show";
cell.selectionStyle = UITableViewCellSelectionStyleBlue;
cell.textLabel.textAlignment=UITextAlignmentCenter;
}
}
...
return cell;
}
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
if (indexPath.section == 1)
{
if (isShowClicked)
{
isShowClicked = NO;
}
else
{
isShowClicked = YES;
}
[tableView reloadData];
}
}
必要なもの:
表示/非表示ボタンをクリックしたときにセルをアニメーション化したいと思います。
insertRowsAtIndexPaths: withRowAnimation:
挿入効果を実現するには、この方法を使用する必要があることがわかりました。しかし、これについての簡単な例は本当にありません。setEditing:animated:
これを行うためのメソッドまたはメソッドのような他のメソッドを含める必要がtableView: commitEditingStyle: forRowAtIndexPath:
ありますか?2 つ目は、アニメーション (セルの挿入) が発生する前に、テーブルビューをセクション 2 (つまり、「表示」セル) に移動したいということです。次に、セルを挿入するアニメーションが発生するはずです。したがって、表示セルをクリックした後のテーブルの最終的な外観は、..
助けが必要..私はただ混乱しました!!