0

5つのセルがあるテーブルがあります。各セルにはボタンがあります。条件によっては、これらのボタンを動的に変更する必要があります。テーブル ビューでボタンを動的に変更する方法。

4

3 に答える 3

1

を介して、表示されているすべてのセルについてテーブルビューにクエリを実行し、ボタンの参照を取得して(ボタンのプロパティを持つサブクラスがあると-visibleCells想定)、それらを変更できます。UITableViewCell

于 2013-02-07T10:39:09.107 に答える
1

あなたができることは、ボタンの値を変更する関数を書き、その関数を呼び出すことができるということです。ボタンの値を変更したら、以下の方法のいずれかを使用します。

次のいずれかを使用[tableview reloadData];して、すべてのテーブル データをリロードできます。

また

次の方法を使用して、特定の行を再ロードできます。

[tableview reloadRowsAtIndexPaths: indexPath withRowAnimation:anyKindOfAnimation];

于 2013-02-07T10:37:53.980 に答える
0

まず、各ボタンにタグを設定する必要があります。これは、

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
//Your code
cell.Button.tag = indexPath.row;
[cell.Button addTarget:self action:@selector(buttonClick1:) forControlEvents:UIControlEventTouchUpInside];

}

次に、このメソッドからボタンを取得できます

- (IBAction)buttonClick1:(id)sender {

int tagNo =[sender tag];
UITableViewCell *cellclicked = [self.tblProfileFollowing cellForRowAtIndexPath:[NSIndexPath indexPathForRow:tagNo inSection:0]];
//Now change the action for the cell
[cellclicked.Button addTarget:self action:@selector(buttonClick2:) forControlEvents:UIControlEventTouchUpInside];

//Your Code

}

- (IBAction)buttonClick2:(id)senderについても同じ手順に従うことができます

どのボタンがクリックされたかを追跡し、そのボタンのメソッドを変更できるようになりました。

そして、セルとボタンをstrongと宣言します。

于 2013-02-08T08:15:58.207 に答える