在表格视图单元格中动态更改按钮

时间:2013-02-07 10:35:00

标签: iphone ios objective-c macos uitableview

我有一张桌子,里面有5个牢房。在每个单元格中都有一个按钮。我需要在某些条件下动态更改这些按钮。如何在表格视图中动态更改按钮。

3 个答案:

答案 0 :(得分:1)

您可以做的是编写一个更改按钮值的功能,然后您可以调用该功能。更改按钮值后,请使用下面提到的任何一种方法:

您可以使用以下任一项:[tableview reloadData];重新加载所有表格数据。

OR

您可以使用以下方法重新加载特定行:

[tableview reloadRowsAtIndexPaths: indexPath withRowAnimation:anyKindOfAnimation];

答案 1 :(得分:1)

您可以通过-visibleCells查询所有可见单元格的表格视图,获取按钮的引用(假设您有一个带有按钮属性的UITableViewCell子类)并更改它们。

答案 2 :(得分: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)发件人

的相同步骤操作

现在您可以跟踪单击的按钮并更改该按钮的方法。

并声明您的手机和按钮强大