0

クリックするとボタンの画像が変わるように、画像ボタンの上に画像を追加したい場所で立ち往生しています。didSelectRow メソッドにロジックを記述しなければなりません。したがって、その画像を追加するには、次の行を記述する必要があります。

button=[UIButton alloc] initWithFrame:CGRectMake(230,0,40,40];
button.addTarget: self action: @selector(buttonPressed:withEvent:) forControlEvents:UIControlEventTouchUpInside];
button.tag=indexPath.row;
[button setImage: [UIImage imageNamed:@"a.png"] forState:UIControlStateNormal];
[cell addSubview: button];

上記のコードを cellForRow に記述した場合は機能しますが、このメソッドではセルが定義されていないため、 didSelectRow では機能しません。

4

2 に答える 2

0

これを試して

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{  

    UITableViewCell *cell=[tableView cellForRowAtIndexPath:indexPath];
    for (UIButton *button in cell.subviews) {
        if (button.tag==indexPath.row) {
            [button setImage: [UIImage imageNamed:@"another.png"] forState:UIControlStateNormal];
        }
    }
}
于 2012-10-01T09:33:12.770 に答える
0

セルを取得するには、didSelectRow でこれを試してください

UITableViewCell *cell = [tableView cellForRowAtIndexPath:indexPath];
于 2012-10-01T09:27:02.697 に答える