我有一个带有自定义单元格的 TableView。单元格中的 subview 之一是 UIButton。当用户单击按钮时,我希望背景发生变化。我得到了所有的工作。但问题是,直到我将受影响的单元格滚动出屏幕然后将其返回屏幕后,我才能看到更改。但我想立即看到变化,没有屏幕上的屏幕外位。我该怎么做?
有关我的实现的更多信息:
方法内部(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
我有线
....
[cell.myBtn addTarget:self action:@selector(onMyBtnTapped:) forControlEvents:UIControlEventTouchUpInside];
然后在
onMyBtnTapped
里面方法是我影响颜色变化的地方。所以也许我需要做的是从父 View Controller (?)重绘一个特定的单元格。
多一点
我已经使用
[self.tableView cellForRowAtIndexPath:indexPath];
获取单元格了。 .但是现在我有了单元格,我不知道如何让它重新绘制自己。我一直在安卓上这样做。我不知道如何在 iOS 上做到这一点。
最佳答案
您可以在单击按钮时重新加载 UITableViewCell:
[self.tableView reloadRowsAtIndexPaths:@[indexPathOfGivenCell] withRowAnimation:UITableViewRowAnimationNone];
关于ios - TableViewCell 中的更改立即生效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28727828/