ユーザーがセルを押すとセルがボタンとして機能するアプリを作成しようとしていますが、セルをボタンとして機能させてアクションを実行するにはどうすればよいですか、またはどのセルが押されているかを知るにはどうすればよいですか?
5 に答える
ドキュメントを読んでくださいが、基本的に、テーブルビューコントローラーのデリゲートを設定すると、クリックするとこのメソッドが呼び出されます。
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
indexpath は、セクションと行を保持します。セクションを 1 つだけ使用している場合はindexPath.row、クリックされたセルのインデックスが返されます。
UITableViewDelegateメソッドを実装しtableView:didSelectRowAtIndexPath:ます。
このメソッドは、ユーザーがいずれかのセルをタップするたびに呼び出されます。渡されたのindexPathがボタン セルのインデックス パスである場合は、何をしてもかまいません。
UITableViewDelegateに関する Apple のドキュメントを読む
と、tableView:didDeselectRowAtIndexPath:
私があなたの質問を正しく理解していれば、ユーザーがセルに触れたときにコードを実行したいだけです。
tableView:didSelectRowAtIndexPath:UITableViewDelegate には( UITableViewDelegate tableView:didSelectRowAtIndexPath:)というメソッドがあります。
それを実装するだけで、そこでやりたいことができます。
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
このメソッドは、ユーザーがセルをタップすると呼び出されます。indexPath.sectionandindexPath.rowは、セル セクションと行のインデックスです。
http://developer.apple.com/library/ios/#documentation/UIKit/Reference/UITableViewDelegate_Protocol/Reference/Reference.html