私は2つのセクションでグループ化されたテーブルビューを持っています。セクション番号1を非表示にし、セクションヘッダーをタップするとセクションが開きます。しかし、セクション1のセルをタップしてビューを開こうとすると、ダブルタップして開く必要があります。しかし、セクション0では1タップだけ必要です。 アップルチュートリアルのopen/closeセクションに基づいています。オープンビューのためにuitableviewcellをダブルタップする必要があります
didSelectRowAtIndexPathメソッドは、セルに最初のタップを登録しません。
方法は次のようになります。
-(void)tableview:(UITableView*)tableView didSelectRowAtIndexPath:(NSIndexPath*)indexPath{
[tableView deselectRowAtIndexPath:indexPath animated:YES];
if(indexPath.section == 0 && indexPath.row == 0)
[self.navigationController pushViewController:trainingController animated:YES];
else if(indexPath.section == 1 && indexPath.row ==0)
[self.navigationController pushViewController:newsController animated:YES];
}
これは擬似コードであるため、作業コードではないかもしれません。
メソッドがセクション0の最初のタップで反応し、セクション1の2番目のタップで反応するのが論理的だとすれば、それはそれ自身に設定されたデリゲートです。とにかく、クラスはUITableViewControllerから継承し、UIViewControllerでは継承しません。 – lagos