を持っていてUITableView
、列を押しても指を離さないのでdidSelectRowAtIndexPath
、まだ呼ばれていませんよね?
- クリックした行を検出するにはどうすればよいですか?どの方法で?
- テーブルビューをクリックしたことを検出するにはどうすればよいですか?のような方法はあります
rowIsPressed
か?またはonTableViewTouchDown
?
を持っていてUITableView
、列を押しても指を離さないのでdidSelectRowAtIndexPath
、まだ呼ばれていませんよね?
rowIsPressed
か?またはonTableViewTouchDown
?少なくとも 2 つのオプションがあります。
1) UITableViewCell をサブクラス化し、デフォルトの uiview から知っている touchhandling を使用できます。(Like touchesBegan:
etc.) / または、テーブルセルの contentView としてカスタム uiview を追加します。
2) 各テーブルセルにジェスチャ認識機能を追加します。
自分がどの行にいるかを調べるには、すべての行にタグを付けることができます (それは行を参照します)cellForRow:atIndexPath:
これを試して
- (NSIndexPath *)tableView:(UITableView *)tableView willSelectRowAtIndexPath:(NSIndexPath *)indexPath
指を離す前に選択状態を検出する方法はありません... UITableView クラスをオーバーライドして、UIGestureRecognizer を追加する必要があると思います。2 番目の質問については、このテーブル ビュー デリゲート メソッドについて話していると思います。
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
ただし、現在選択されている行を取得する別の方法もあります。これはそれです(テーブルビュークラスから直接):
- (NSIndexPath *)indexPathForSelectedRow
お役に立てば幸いです!