UITableViewの編集モードにて、セルを選択する設定で少しつまづきました。
その後、調べて解決しました。
編集モードで、セルをタップしたい。
調べると、IBから設定できるようだ
編集時もセルの選択を有効にする
デフォルトのままだと、編集モード時にはセルを選択することができません。編集モード時にも選択を有効にするには、Interface Builderで以前Table ViewのStyleを選んだところ(Attributes Inspectorの上の部分)にある、 Allow Selection While Editingにチェックを入れます。 これで編集モードでも選択が有効になります。
上記サイトの指示通り、Interface BuilderにおいてAttributes Inspectorを開き、Allow Selection While Editingというチェック項目を探したのだが、見当たらない。
本来ならこう表示されてるらしい
引用元▶︎20. UITableView 데이터 편집 및 삭제
僕のはこうなっていた
見当たらない。バージョンの違いだろうか。
ちゃんとコードありました
このようなUI(あんまりよろしくないですが)は、見ての通りUItableviewに
[self.tableView setEditing:YES animated:YES];
されているのですが、これをすると困ったことに
tableView: didSelectRowAtIndexPath:
が呼ばれなくなります。…ので要するにタップ出来なくなります。
当初、UITapGestureRecognizerで強制的に呼んでいたのですがそうすると今度はデリートボタンの反応がとても悪くなります。
どうすりゃええんやーと思ってリファレンス読み直したらちゃんと
self.tableView.allowsSelectionDuringEditing=YES;
っていうのがありました(汗
とのことで。
self.tableView.allowsSelectionDuringEditing=YES;
このコードをviewDidLoadに追加すると、目的は達成されました。
追記・・Attributes Inspectorにもありました
fuzzballさんのご指摘があり、確認するとIBのAttributes Inspectorにもちゃんと設定項目がありました。
チェック項目だったものが、Single,Multipleという選択肢が追加され、プルダウン形式になっていたようです。よく確認できてませんでした。
fuzzballさんありがとうございました。