0

セル内に UIButton を持つテーブルビューがあります。

didSelectRowAtIndexPath 内にいくつかの機能を作成しました。私が望むのは、ユーザーがボタンをクリックしたときに同じ機能/メソッドが実行されることです。

buttonPressed メソッドで didSelectRowAtIndexPath を実行するにはどうすればよいですか?

これができない場合は、機能を新しいメソッドに移動して、両方にこの新しいメソッドを呼び出させることができます。ただし、ボタンを押したメソッドからセルの indexPath を取得するにはどうすればよいですか?

4

3 に答える 3

0

で、ボタンcellForRowAtIndexPathに割り当てます(行のみが必要であると仮定します-アイデアは、何らかの方法でボタンにアタッチすることですが、それを行う1つの方法にすぎません)。indexPath.rowtagindexPathtag

-(UITableViewCell*)tableView:(UITableView*)tableView cellForRowAtIndexPath:(NSIndexPath*)indexPath {

    // Init / Reuse the cell ...

    cell.button.tag = indexPath.row;

    return cell;
}

-(void)buttonPressed:(UIButton*)button {
    [self method:button.tag];
}
于 2013-07-05T00:03:55.163 に答える
0
  1. ボタンを含むオブジェクトを見つけUITableViewCellます (そのコンテナー ビューの 1 つである必要があります。スーパービュー チェーンを上に移動するだけです)。
  2. で indexPath を見つけます[UITableView indexPathForCell:]
于 2013-07-04T18:36:04.677 に答える